|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
malci Član
Pridružen-a: Sob 15 Sep 2007 21:05 Prispevkov: 792 Aktiv.: 3.93 Kraj: Polhov Gradec
|
Objavljeno: Tor Apr 04, 2017 10:44 pm Naslov sporočila: Zx Spectrum 48k |
|
|
Pozdravljeni!
Malo brskam po netu in sem naletel na ta video posnetek nalaganja programa v Zx Spectrum.
Ker je to bil moj prvi računalnik v rosnih letih (ne vem, star sem bil tam nekje 10,11 let) me sedaj zanima čisto tako iz radovednosti nekaj stvari.
1. Kako je potekalo nalaganje programa. Kaj se je naložilo v prvem delu? Se je takrat naložil samo ime programa?
2. Kaj je pomenilo in zakaj je bil potreben tisti prvo piskanje ( uvod, ko so bile rdeče-turkizne črte)?
3. kakšna je bila hitrost prenosa teh podatkov iz kasete v računalnik? Če je bilo samo 48kB spomina, nalagalo se je pa tudi več minut...težko predstavljivo v današnjih časih.
4. So modro-rumene črte dejansko predstavljale podatke (1 oz 0), ali so bil kar tako?
5. Igra na posnetku je sestavljena iz večih delov. Si to lahko predstavljam kot sedaj knjižnice ?
Ja, imam lepe spomine na te čase. Ure in ure presedl pred črnobelim televizorjem in igral, pa tudi že programiral. Se spomnim ene rdeče knjige, na naslovnci pa je pisalo "BASIC". In takrta sem se okužil z Basicom .
lp
uroš _________________ Elektronika za hobi |
|
Nazaj na vrh |
|
|
darkob Član
Pridružen-a: Pon 27 Mar 2017 20:33 Prispevkov: 48 Aktiv.: 0.56 Kraj: Ljubljana
|
Objavljeno: Sre Apr 05, 2017 10:07 am Naslov sporočila: |
|
|
1. Najprej header, potem podatki. V headerju je zapisano ime, lokacija cilja in dolžina. Plus še nekaj podrobnosti. Točno strukturo headerja dobiš na internetu.
Na posnetku, ki si ga polinkal je vidno, da je nalaganje šlo v treh delih. Ko se naloži prvi header se izpiše ime iz headerja. Toda s podatki prvega dela se zatemni zaslon in se tako prepreči, da bi se na zaslonu izpisovalo še kaj. Drugi del header/podatki vsebuje zaslonsko sliko, ki se naloži neposredno kot "atributi" (barva) posameznega bloka 8x8 bitov. Binarna slika bi se, namreč, nalagala dolgo. Slika narejena le iz "atributov" (MANIC MINER) pa je zelo kratka. Tretji del je sam program.
2. Rdeče-turkizne črte, oz. prvo piskanje služi sinhronizaciji računalnika (procesorja) na zvok s traku, saj za pravilni sprejem skrbi osrednji procesor (Z80). Tako procesor pravilno interpretira zaporedje bitov, ki sledijo (prikazano z modro-rumenimi črtami).
3. Bežno se spomnim, da cca 1200 bitov v sekundi (bps) ali nekaj več. Ker pa je zapis na traku binarni FSK je to pomenilo, da je tudi število sprememb enako, torej cca. 1200 bauda. 48KB se je nalagalo cca. 5 minut. Tudi zato smo nekateri delali na hitrejših "loaderjih", ki so podvojili hitrost na 2400 bps in skrajšali nalaganje za polovico. Vse se je delalo v Z80 assemblerju in se pazilo na to koliko časa traja kakšna strojna instrukcija ob upoštevanju, da procesor teče na 3,5 MHz.
4. Modro-rumene črte so dejanski prikaz podatkov, ampak barve niso 0 in 1, temveč valovne (zvokovne) polperiode. 0 ali 1 pa se razlikujeta v dolžini cele periode, zato so na zaslonu enkrat črte na gosto, drugič bolj redko razporejene. Ne spomnim se na pamet ali je 0 ožja od 1 ali je ravno obratno.
5. Niti ne. Gre za različne dele programa. Prva dva dela se naložita na zaslon, tretji del je sam program. Programi pisani v assemblerju so bili pisani zelo šparovno. Nobenih knjižnic ni bilo, le pisanje programa naravnost v memorijo.
LP
Darko |
|
Nazaj na vrh |
|
|
malci Član
Pridružen-a: Sob 15 Sep 2007 21:05 Prispevkov: 792 Aktiv.: 3.93 Kraj: Polhov Gradec
|
Objavljeno: Sre Apr 05, 2017 8:38 pm Naslov sporočila: |
|
|
hvala darkob, del radovednosti potešen .
Assemblerja ne poznam niti malo. To je verjetno bolj strojni jezik. Bi prosil koga,ki je domač v tem jeziku, da bi spodnjih nekaj ukazov sestavil v assemblerju. Da si vsaj malo predstavljam ta strojni jezik.
Koda: |
10 PRINT " Hello Word"
20 PAUSE 100
30 CLS
40 FOR i=2 to 11
50 PRINT AT 1,i ; "*"
60 PAUSE 10
70 PRINT AT 1,i-1: " "
80 NEXT i
|
Pa še nekaj. Na kakšen način pa se je pisalo program? Verjetno v kakem text editorju na kaki močnejši mašini? A je potem bil tudi na tej mašini kak prevajalnik (compiler)? _________________ Elektronika za hobi |
|
Nazaj na vrh |
|
|
protoncek Član
Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 45.82 Kraj: Mengeš
|
Objavljeno: Čet Apr 06, 2017 7:34 am Naslov sporočila: |
|
|
Pisalo se je na samem spectrumu, podobno kot v notepad, le da si vpisoval samo v spodnji vrstici, v zgornji pa je bil izpisan do sedaj napisan program.
Imel je vgrajen basic compiler, kateri je po ukazu "run" sproti prevajal v strojno kodo (zato počasnost v primerjavi s programom v asemblerju). Zaradi hitrejšega pisanja programa je imel prirejeno tipkovnico - pritisk tipke "p" je že pomenil "print" itd...
Ker je bilo v 16k ROM-u nekaj praznega prostora se je dalo kupit čipe, ki so tam vsebovali kakšne koristne programčke (recimo hitrejši loader, basic compiler extension itd...).
Mislim, da je bila takrat njegova največja res slaba lastnost ta, da ni bilo disketne enote - imel je tračno enoto, ki pa je bila žal na posebne kasete in izredno nezanesljiva ter počasna (in predraga). |
|
Nazaj na vrh |
|
|
peterv6i Član
Pridružen-a: Tor 22 Jan 2008 13:30 Prispevkov: 116 Aktiv.: 0.59 Kraj: Izola
|
Objavljeno: Čet Apr 06, 2017 2:58 pm Naslov sporočila: |
|
|
malci je napisal/a: |
h
Pa še nekaj. Na kakšen način pa se je pisalo program? Verjetno v kakem text editorju na kaki močnejši mašini? A je potem bil tudi na tej mašini kak prevajalnik (compiler)? |
Če se še spomnem je bil nek editor za programirat v strojnem jeziku.. (govorim na spectrumu).. potem si tisto posnel na kaseto in z randomize usr pognal program
No piše se leto 2017... evo še je aktualno..
|
|
Nazaj na vrh |
|
|
malci Član
Pridružen-a: Sob 15 Sep 2007 21:05 Prispevkov: 792 Aktiv.: 3.93 Kraj: Polhov Gradec
|
Objavljeno: Čet Apr 06, 2017 9:09 pm Naslov sporočila: |
|
|
Citiram: |
Zaradi hitrejšega pisanja programa je imel prirejeno tipkovnico - pritisk tipke "p" je že pomenil "print" itd... |
Ja , to pa vem, imam še sedaj v spominu kar nekaj teh ukazov ( L=LET, J=LOAD, M=PAUSE, O=POKE, I=INPUT...), potem si imel še rdečo tipko symbol shift... AT, OF, =, +, ...
Sam sem takrat napisal program/igrico, kjer se je za delček sekunda pokazali kocka z naključno število pik, potem pa si moral vpisati pravilno število. Lahko bi rekel, da je bil to moj prvi program, prej sem ji samo prepisoval, kar je bilo objavljeno v reviji...mm ne vem, a je bil ciciban, a je bil pil, če ne celo TIM.
A to sem pisal v basicu, ki je je naložil ob vklopu spectruma.
Saj, kakor sem zgoraj zastopil, se je tudi assemblerju pisalo na ta način. A sta bila ukaza POKE in PEEK del tega strojnega jezika? Takrat teh dveh ukazov nisem prav nič zastopil. _________________ Elektronika za hobi |
|
Nazaj na vrh |
|
|
eldi2011 Član
Pridružen-a: Pon 29 Sep 2014 15:55 Prispevkov: 256 Aktiv.: 2.21
|
Objavljeno: Pet Apr 07, 2017 6:41 am Naslov sporočila: |
|
|
S POKE si vpisal direktno na spominsko lokacijo, s PEEK pa si prebral vrednost na naslovu. Sintaksa:
integer_variable = PEEK(address)
POKE address, value |
|
Nazaj na vrh |
|
|
peterv6i Član
Pridružen-a: Tor 22 Jan 2008 13:30 Prispevkov: 116 Aktiv.: 0.59 Kraj: Izola
|
Objavljeno: Pet Apr 07, 2017 1:44 pm Naslov sporočila: |
|
|
Eden dobrih takrat na področju spectruma je bil tudi Jonas in Matevž Kmet in bivši minister Žiga Turk...
|
|
Nazaj na vrh |
|
|
peterv6i Član
Pridružen-a: Tor 22 Jan 2008 13:30 Prispevkov: 116 Aktiv.: 0.59 Kraj: Izola
|
|
Nazaj na vrh |
|
|
NaMi Član
Pridružen-a: Pon 02 Jan 2012 15:21 Prispevkov: 93 Aktiv.: 0.62 Kraj: celje
|
|
Nazaj na vrh |
|
|
NaMi Član
Pridružen-a: Pon 02 Jan 2012 15:21 Prispevkov: 93 Aktiv.: 0.62 Kraj: celje
|
|
Nazaj na vrh |
|
|
fricky Član
Pridružen-a: Pon 22 Sep 2003 15:37 Prispevkov: 256 Aktiv.: 1.15 Kraj: Ribniško Pohorje
|
Objavljeno: Tor Mar 12, 2024 10:29 pm Naslov sporočila: |
|
|
Super. Kje se še dobi membrana? Bi moral tudi mojega oživit... |
|
Nazaj na vrh |
|
|
prel1 Član
Pridružen-a: Pon 29 Nov 2021 20:16 Prispevkov: 104 Aktiv.: 3.67 Kraj: Koper
|
Objavljeno: Sre Mar 13, 2024 8:52 am Naslov sporočila: |
|
|
fricky je napisal/a: |
Super. Kje se še dobi membrana? Bi moral tudi mojega oživit... |
Če ne kje drugje, na ebayu zagotovo in razne retro spletne trgovine. Za iskanje "Sinclair ZX Spectrum 16K/48K replacement Keyboard Membrane" _________________ Lp |
|
Nazaj na vrh |
|
|
NaMi Član
Pridružen-a: Pon 02 Jan 2012 15:21 Prispevkov: 93 Aktiv.: 0.62 Kraj: celje
|
|
Nazaj na vrh |
|
|
fricky Član
Pridružen-a: Pon 22 Sep 2003 15:37 Prispevkov: 256 Aktiv.: 1.15 Kraj: Ribniško Pohorje
|
Objavljeno: Pet Mar 15, 2024 11:24 pm Naslov sporočila: |
|
|
Hvala! |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 49 dni
Powered by phpBB © 2001, 2005 phpBB Group
|