Manchmal, da will man sich ein bisschen mit Dingen beschäftigen, die man so als normal-User nicht oft braucht, wenn man nicht gerade Spiele, Demo oder Sonsteincoder ist.
Auf dem Mittwintermeeting 2012 kam die Idee auf, dass man ja mal so einen kleinen Assembler Grundkurs machen könnte. Und bevor man damit beginnt, muss man natürlich erst einmal die passende Software und Dokumentation heran karren, damit man dann auch gepflegt loslegen kann.
Wer in der glücklichen Situation ist, eine ROM-Box zu haben - am besten eine, wo man die ROMS nicht mehr umständlich als EPROM, sondern easy per Software laden kann - der braucht definitiv Maxam 1.5 und Protext. Was? Ja! Maxam ist DER Assembler auf dem CPC (Ja, Maxam II gibt es auch, ist weniger bekannt, läuft unter CP/M und ist eher für den PCW ideal) und in der Version 1.5 auch schön in einem ROM verpackt.
Protext ist ein Textsystem für den CPC und was für ein geiles! Im 80 Zeichen Modus hat man alles schön untr kontrolle und man kann direkt aus Protext raus den Assembler Maxam starten, so dass man schnell und optimiert arbeiten kann. Code in Protext schreiben, speichern, compilieren, starten, korrigieren, speichern, compilieren, starten, abschmieren, laden, korrgieren etc… Super Sache! Hat mir immer viel Spass gemacht.
Man braucht also an Software für die ROM-Box:
Maxam gibt es auch in kleineren Versionen mit und ohne inkludiertem Texteditor als Diskettenversion, genauso wie Protext auch. Findet man auf dem CPCSZENE-FTP
An Literatur hilft am Anfang ein schönes ROM-Listing. Dort findet man alle System-Calls. So muss man zumindest für den Anfang die ganzen Räder nicht neu erfinden und kann auf bestehende Systemroutinen zurückgreifen um "Standard-Probleme" mit Standard-Lösungen zu beheben. Textausgabe, Diskettenoperationen… so Zeugs eben. Ein richtiger Coder würde zwar als erstes alles übern Haufen werfen und eigene Routinen für Textausgabe und Gedöns machen, weil das dann nochmal alles nen fetten Tacken schneller wird (manch einer kann mit optimierten Diskettenroutinen schneller seine Dateien lesen, als der Floppymotor die Scheibe drehen kann, sagt man) - aber für den Anfang reicht es sicherlich, wenn man sich mal daran erfreut ein geladenes A-Register als Character auf dem Screen auszugeben.
Und das sollte man also haben und am besten ausgedruckt neben sich liegen zum stöbern:
- ROM-Listing des CPC 464/664/6128 (hier von Markt & Technik)
- Programmierung des Z80 (hier von Sybex)
- MAXAM Entwicklungsumgebung (hier von Ralf Probst)
- MAXAM 1.5 Handbuch (englisch von Brian Watson)
Manch einer wird nun "WIE KANNST DU NUR DIESE BÜCHER EMPFEHLEN" schreien. Aber hey.. deshalb gibt es unter diesem Beitrag einen Kommentar-Knopf, um seine eigenen Tipps und Tricks mit einfliessen zu lassen.
Gehen wir also trotzdem einmal davon aus, dass wir uns all diese hübschen Dateien auf den Rechner geladen haben. Was nun? Nun. Wir sollten uns erstmal eine ROM-Box besorgen, oder? Sonst macht das alles a) keinen Spass (das Coden mit Maxam als zu ladende Software ist ein Greuel!) und b) dauert auch alles zu lang.
Ich kruschtel mal in meiner Kiste was für ROM-Boxen man am besten nimmt. Vielleicht kann hier ja der eine oder andere mal nen netten Tipp abgeben, was man heutzutage nehmen sollte mit Links zu Adressen, wo man es beiziehen kan? Und ein anderer kann ggf. für die OldSkooler einen EPROM-Brennservice anbieten und Maxam und Protext jeweils als EPROM gegen Unkostenbeitrag anbieten?
Und wenn jetzt noch der eine oder andere sagt: "AU JA, da helf ich mit, anderen Assembler beizubringen", dann könnte es passieren, dass wir hier den einen oder anderen netten Kurs und ein paar Sources für Einsteiger anbieten können. Wäre doch klasse, oder?