Hallo, ich weiß, EPROMs sind veraltet, trotzdem möchte ich gerne verstehen wie früher zum Beispiel Assembler oder Programmiersprachen für Computer lauffähig in ein EPROM gebracht wurden. Ich nehme mal an, das diese Programme zunächst auf dem jeweiligen Computer programmiert wurden und lauffähig waren, bevor sie dann in ein passendes EPROM transferiert wurden. Was galt es da zu beachten... gibt es da ggf. Beschreibungen/alte Unterlagen die den Prozess beschreiben und wo Ihr mir vielleicht einen Link oder eine Quelle zusenden könnt? In Summe geht es hier um einen alten Computer (ZX81) für den es diverse Programm Images in Binärformat zum brennen in ein EPROM gibt, und hier möchte ich einfach nur den Prozess bis zur Imageerstellung verstehen. Vielen lieben Dank
Wenn man heute noch für so alte Prozessoren Programme Entwickelt dann genauso wie für aktuelle Mikrokontroller. Man schreibt sie in Assembler oder in C und kompiliert sie mit einem Crosscompiler. Führt sie eventuell in einem Emulator aus, und Flasht dann den Mikrokontroller bzw. brennt den EPROM-Baustein.
Hallo, ich weiß´jetzt nicht, was dir da so unklar ist? Das Programm wird normal mit einem Entwicklungstool erstellt, da normal auf einem PC oder einer Alternative oder einem Vörgänger des PC läuft. Versierte Programmierer können kleine Projekte auch ohne so was entw. Manche Entw-Tools mit intergeirtem Debugger simulieren das Zielsystem nur, bei aufwendigeren Systemem hat man einen Incircuit-Debugger. Die Programmiersprache kann Assembler oder eine Hochsprache sein. Manche versierte Programmierer können Programme auch direkt in Maschinensprache schreiben, aber natürlich macht man das bei komplexen Aufgaben nicht. Bei Hochsprachen braucht man natürlich einen Compiler und dann normal auch noch einen Linker. Damit wird ein Hexfile generiert, das dann mit einem EPROM-Programer auf den EPROM gebrannt wird. Gruß Öletronika
Ok... Danke... Ich dachte da muß noch was bei beachtet werden. LG
Namaste Heute geht das, früher hat man erstmal am Schreibtisch (wörtlich) alles schön aufgeschrieben und dann Hexcode von Hand eingetippt um dann ein Brennertool anzuweisen das ganze vom Ram ins EPROM zu tansferieren. Dafür hat man mit etwas Geschick einen Hexeditor mit Checksummenberechnung benutzt. Denn bevor man einen Assembler hatte musste man von Hand als0 zu Fuss assemblieren und Opcode und Parameter mittels handschriftlich zu erstellenderer Listings zusammengefügen. Namaste
:
Bearbeitet durch User
Es gab sog. Eprom-Emulatoren, die aus statischen Rams bestanden. Wenn das Programm dann fehlerfrei lief, wurde deren Innhalt auf einen "richtigen" Eprom gebrannt. Das ersparte die ewige Löscherei und Wiederprogrammierei der armen Eproms. MfG Paul
Winfried J. schrieb: > um dann ein > Brennertool anzuweisen das ganze vom Ram ins EPROM zu tansferieren Warmduscher. Sowas hat man Binärbyte für Binärbyte und Adresse für Adresse mit DIL-Schaltern eingestellt und mit einem Taster und ein bisschen Logik dahinter das Byte ins EPROM gebrannt. mfg.
:
Bearbeitet durch User
Paul Baumann schrieb: > Das ersparte die ewige Löscherei und Wiederprogrammierei der armen > Eproms. Besonders wenn es OTP ohne Fenster waren und man nur einen Schuss hatte.
> Warmduscher tut mir leid bei mir gings vom Relais über Magnetkarte am Tischrechner direkt zum 8Bit ATARI > "mit DIL-Schaltern eingestellt und mit einem Taster " Davon habe ich auch gehört. Ich glaube der Schlenzig hat mal einen Melodiegenerator mit NE555, Schiebergister, Epromm und dieser Programmiermethode veröffentlicht. Allerdings wurden der DIL Schalter und Taster mittels TT-Modellbahnschaltpulten substituiert. Letzere benutze ich glegentlich um SPS Eingänge im debugging zu schalten. Vorteil sie lassen sich sowohl monostabil tasten als auch bistabil schalten. Namaste
:
Bearbeitet durch User
So habe ich auch meinen allerersten Eprom programmiert. 2716, Monitorprogramm für einen Z80. Adresse und Daten per Schalter, Feuertaste :-) Erstes Programm am Eigenbau-Rechner war dann ein Eprom-Programmer. Weiss nicht mehr, wie viele Versuche ich gebraucht habe. Aber es war ein sehr intensives Erlebnis...Ich hatte nur einen einzigen Eprom (Goldstaub) und fuhr dann mit dem Moped in die Sauna, um dort eine Viertelstunde Höhensonne zu buchen...
> um dort eine Viertelstunde Höhensonne zu buchen
du hättest ihn auch im Sommer aufs Fensterbrett kleben/legen können.
H.Joachim Seifert schrieb: > fuhr dann mit dem Moped in die Sauna, um dort eine > Viertelstunde Höhensonne zu buchen... Daher kommt die Bezeichnung "Brown out", weil die Eprom-Besitzer mit satter Bräunung wieder aus der Sauna kamen. MfG Paul
Nene, die Sache war mir suspekt. Das roch so komisch und die Brillen waren auch sehr eigenwillig. Habe nur mein Heiligtum mit Isolierband angehängt. War schon ne errückte Zeit.
Hallo Torsten, die meisten Leute werden den ZX81 wohl in Basic programmiert haben. C war ja noch ganz jung und eine Programmierumgebung rund um den ZX81 ist mir nicht bekannt. Erst recht keine Emulatoren oder Eprom-Brenner. Man wird damals eher kompatible (8080) Rechner verwendet haben mit CP/M als Betriebssystem. Wahrscheinlich wurde darauf die Software entwickelt und dann mittels Eprom-Emulator oder Eprom-Brenner direkt am ZX81 getestet. Die Assembler und Compiler waren sündhaft teuer und der Otto-Normal- bürger konnte sich weder einen CP/M-Rechner, noch Assembler leisten. In den 90ern, als Mikrocontroller noch externe Eproms hatten, hat man gerne eprom-Emulatoren mit Ram verwendet. Die wurden u.a. am Parallel- port angeschlossen und haben einen Drucker simuliert. Im Emulator hat dazu ein Binärzähler die Adressen des Rams hochgezählt (mit Hilfe des Strobe-Signals vom parallelport) und über die acht Datenleitungen das RAM beschrieben. Am Schluss wurde der Reset für den Prozessor freigegeben und dieser hat mit dem neuen Programm gestartet. Genauso kann man auch ein Eprom beschreiben. Es sind lediglich noch Timer und eine Programmierspannungserzeugung notwendig. Habe ich alles noch im Keller liegen samt Eprom-UV-Löschgerät. Kannste gerne alles haben. (kostenlos) Der Apple II hatte damals eine Z80, bzw. 8080 Steckkarte. Damit kamen dann auch erstmals bezahlbare Assembler und erste Compiler auf. Das war aber zeitlich nach der ZX81-Ära und nicht wirklich mehr relevant. Einige Elektroniker haben auch mittels DIP-Switches selber Programme in Maschinensprache direkt in EEPROMs gebrannt. Ich gehöre auch dazu. Mir ist auch bekannt, dass es Boot-Programme gab, die aus Diodenarrays aufgebaut waren und über einen Zähler ausgelesen wurden. Mit 16 Bytes konnte man schon einen Bootloader bauen. :) Früher hatten diese CPUs noch einen Ausgang der aktiv wurde, wenn ein Befehl abgearbeitet wurde und einen stopp-Eingang mit dem sie angehalten werden konnten. Somit konnte man Programme step für step abarbeiten, eben mit DIP-Schaltern und Tastern. Wenn Du heute ein Image auf ein EEPROM brennen möchtest, dann benötigst Du lediglich einen EPROM-Brenner. Ich habe lange nicht mehr geschaut aber sowas gibt es sicher noch. Sicher auch für USB. Wobei, die alte Methode mit dem Druckerport würde immer noch gehen. ...sofern der PC sowas noch hat. Viele Grüße, Christian
Winfried J. schrieb: >> um dort eine Viertelstunde Höhensonne zu buchen > > du hättest ihn auch im Sommer aufs Fensterbrett kleben/legen können. Nö, ham wir damals probiert, war selbst nach einer Woche im Sommer aufm Fensterbrett nichts zu machen, die Bits sind nicht mal ansatzweise auf high gehüpft. Zumindest die 2716, mit denen wir damals gespielt haben, waren da recht resistent. Ich habe dann auch beschlossen, die EPROMs in meinem Apple ][ Klon nicht zu zukleben und habs nie bereut :-) Mein 8051 Entwicklungssystem hatte einen Static RAM ab 0h8000 und unten bei 0h0000 natürlich den EPROM. Wenn ich was probiert habe, dann immer mit ORG 0h8000 assembliert und ins Dev System hochgeladen. Wenns gelaufen ist, dann mit ORG 0h0000 nochmal assembliert und ab ins EPROM.
:
Bearbeitet durch User
> In Summe geht es hier um einen alten Computer (ZX81)
Hm..ich kann dir sagen wie das 1983 mit einem ZX-Spektrum funktioniert
hat.
Zunaechst mal, man fragte nicht im Internet doof rum wenn man etwas
nicht konnte sondern hat entweder ein Fachmagazin (Happy Computer, Elrad
:-) gelesen. c't gab es erst ab 12/83. Ausserdem hat man sich den Zaks
aus der Stadtbibliothek besorgt. Und irgendwoher, Reviermarkt? Kam eine
Kopie einer Kopie von einer Kopie des Schaltplans und der
Steckerbelegung. Die war so beschissen lesbar das ich selbt mit 16 schon
glaubte einen Augenschaden zu haben.
Auf der Hobbytronik konnte man sich den Stecker fuer den
Erweiterungsslot kaufen. Ausserdem ein Eprom. (Damit war das Taschengeld
dann weg)
Im uebrigen nicht mit einem Nullkraftsockel. Dafuer war man als Schueler
nicht reich genug.
Dann hat man sich die Schaltung ausgedacht und das Programmiergeraet auf
Lochraster gefaedelt und hinten an den Erweiterungsbus gesteckt. Die
Software wurde in Basic geschrieben. (Aechz. Basic, so ein scheiss!)
Die 1ms Impulse fuer den Programmieralgorythmus wurden mit einem 1Kanal
Hameg ueberprueft das es kurz vorher als Bausatz(!) zu Weihnachten gab.
Die Assemblerprogramme wurden auf Papier von Hand geschrieben und
uebersetzt. Das hat den Vorteil das man danach die wichtigsten
100Befehle und ihren Hexcode auswendig konnte. (Ich glaube RET ist C9
oder? :-) Und den Nachteil das man eine gewisse Aversion gegen relative
Spruenge entwickelt.
Tja, und dann konnte man z.B das Rom dex ZX in das Eprom kopieren und
dort zusaetzliche Routinen einfuegen die es erlaubt haben von jeder
Kasette eine Sicherungskopie zu machen. :-D
Interessant war auch das Loeschen des Eproms. Das lief mit einem 250W
HQL Quarzbrenner mit entferntem Aussenglas. Einschalten, Kinderzimmer
verlassen, 10min warten, Luft anhalten (wegen Ozon) zurueckkommen und
Stecker ziehen und Fenster oeffnen. Da sind dann auch gleich alle
Muecken von der Wand gefallen weil sie einen Sonnenbrand hatten und
blind waren.
Was lernt man draus?
1. Der heutige Nachwuchs nervt manchmal weil er es fuer normal haelt das
alles von selbst geschieht und er ein Recht auf Doofheit und Internet
hat.
2. Man hat Verstaendnis dafuer weil man selber niemals mehr so
entwickeln moechte. Waren halt harte Zeiten damals. :-)
Olaf
Meinen ZX81 habe ich damals mit aufgestocktem RAM gepimpt, ich denke mal, so etwas ähnliches hat der TE auch vor. Auf den 2k RAM (6116 oder so) habe ich weitere 6116 gestapelt. Das /CS Signal für die RAMs kam von einem 74138 in Dead-Bug Technik. Wenn man nun statt der aufgelöteten RAM einen 24 pol. Sockel nimmt, kann man da auch ein EPROM aufsetzen. Trickig ist allerdings die Programmierung, denn der ZX81 hatte da ja kein Assembler drin, sondern Tokenized Basic. Ans Sinclair ROM geht man besser nicht ran, die Nummer mit dem Video, der ULA und dem NMI kriegt man speziell als Anfänger vermutlich nie hin.
:
Bearbeitet durch User
> Trickig ist allerdings die Programmierung, denn der ZX81 hatte da ja kein > Assembler drin, sondern Tokenized Basic. Deshalb hatte man da ja von Hand gemacht. Da ist man wenigstens motiviert keine Fehler zu machen. :-) Ich glaube im Elektor Halbleiterheft von 1979 war auch eine Schaltung drin wie man ein Eprom nur mit Schaltern und einem Monoflop programmiert. Das war dann wohl fuer die ganz harten. > Ans Sinclair ROM geht man besser nicht ran, die Nummer mit dem Video, > der ULA und dem NMI kriegt man speziell als Anfänger vermutlich nie hin. Das Rom im ZX Spektrum war pinkompatibel zum 27128. Ausserdem war der gesamte Adressraum bereits belegt. Wenn man nur im Ram programmieren will dann kann man das ja auch einfach in eine Rem-Zeile poken. Olaf
Olaf schrieb: > Das Rom im ZX Spektrum war pinkompatibel zum 27128. Ausserdem war der > gesamte Adressraum bereits belegt. Im ZX81 wars ein 8k Mask-ROM, vermutlich auch JEDEC Standard a là 2564/2764. Voll bis obenhin und eben die trickige Videologik mit der Ferranti ULA verwurschtelt. Der Z80 rechnete praktisch nur in der Austastlücke, während des Bildaufbaus bekam er von der ULA NOPs untergeschoben und Ferranti machte das Video. Olaf schrieb: > Ich glaube im Elektor Halbleiterheft von 1979 war auch eine Schaltung > drin wie man ein Eprom nur mit Schaltern und einem Monoflop > programmiert. Das war dann wohl fuer die ganz harten. Denke ich auch. Ich habe mir letztes Jahr aus der Not heraus wieder einen Prommer gebaut, der am LPT läuft: http://www.qsl.net/iz7ath/web/02_brew/17_eprom/english/pag01_eng.htm
:
Bearbeitet durch User
Matthias Sch. schrieb: > einen Prommer gebaut, der am LPT läuft: Was ist denn ein LPT? :-) In der Firma habe ich einen Galep3 liegen für die immer seltener auftretenden "Notfälle", so alle paar Jahre inzwischen. Dafür habe ich dann auch noch ein Notebook mit XP weil die Galep32 Software sich unter Win7 nichtmal installieren lassen will und aktuelle Rechner sowieso nur noch USB haben.
LPT = List Printer Er meint wohl eher den SPP = Standard parallel Port. Wobei zu Basteln der EPP =Enhanced Parallel Port wesentlich interessanter war, da bidirektional und schneller. Beinhahe jeder Desktop Computer seit der 386er Generation hat einen EPP kompatiblen Port.
Stefan us schrieb: > LPT = List Printer > > Er meint wohl eher den SPP = Standard parallel Port. > Deine Beiträge sind wie Tag und Nacht. Dieser ist sehr verquer.
Christian schrieb: > ... > Habe ich alles noch im Keller liegen samt Eprom-UV-Löschgerät. Kannste > gerne alles haben. (kostenlos)... > > Viele Grüße, > Christian Hallo Christian... an Deinem Angebot hätte ich durchaus Interesse. Wenn Du dazu stehst, dann schreib mich doch bitte mal per PN an wenn Du Forumsmitglied bist. Allen anderen für Ihre bisherigen Beiträge vielen Dank... auch wenn diese von meiner eigentlichen Frage teilweise abschweifen... aber Geschichte(n) ist/sind ja auch schön :-)
Hallo Christian, vielleicht liest Du diesen Thread ja nochmal... würde mich freuen wenn Du mich bezüglich Deines oben gemachten Angebots per PN anschreiben könntest, damit wir ggf. alles weitere regeln könnten. Vielen lieben Dank
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.