kennt sich jemand mit cp/m aus?

D

derfopps

Aktives Mitglied
Thread Starter
Dabei seit
25.07.2010
Beiträge
133
Reaktionspunkte
3
Hallo.

Ich habe gerade angefangen, mich mit einem tollen alten Intel 8080 auseinander zu setzen. Leider krieg ich die Bedienung nicht so richtig hin :(
Kann mir zufällig jemand hier (ich weiß, dass das eigentlich kein Mac-Thema ist, aber der Mac II lief auch mit intel8080, oder?) sagen, wie ich in CP/M-intel-Mnemonics eine bestimmte Speicheradresse allokieren (und füllen...) kann, oder wie ich auf eine einmal gefüllte NACH dem Programmdurchlauf referenziere? Das muss doch gehen!

Wär toll, wenn sich jemand erinnern könnte - ich kann nicht, das Ding ist doppelt so alt wie ich^^

Schönes Wochenende

*EDIT*
Hab's gerade mal mit MVI A | XXX | STA | YYY YYY | HLT versucht (also X an der Stelle Y zu speichern) - das scheint nicht geklappt zu haben. War die Idee ganz doof? Warum? Argh!^^
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: michaelengel und below
Für den apple //e gab es mal eine Z-80 Karte - für CP/M... hatte ich sogar mal rumliegen. Aber nie was mit gemacht. Schau doch mal bei ebay, ob da einer ein altes CP/M Buch verkauft...

Udo
 
Auch wenn's kein Mac Thema ist, und ich gar nichts dazu sagen kann :clap: Danke für diesen Thread!

Historische Computer find ich toll!

Alex
 
derfopps; schrieb:
(ich weiß, dass das eigentlich kein Mac-Thema ist, aber der Mac II lief auch mit intel8080, oder?)

OT: Sorry, aber Du meinst da wohl eher den Apple II, der Mac II war durchaus schon ein relativ fortschrittlicher Computer mit 32 Bit CPU (Motorola 68020).

Der Apple II hatte aber eigentlich einen MOS 6502 drin, die CPU des seligen C=64.
Es gab aber wie bereits erwähnt eine Erweiterungskarte mit einem Z80 (Konkurrent zum Intel 8080), um eben CP/M als alternatives Betriebssystem laufen lassen zu können.
 
Zuletzt bearbeitet:
"STA YYYY" sieht für 8080 Prozessoren genau richtig aus. Ich kenne CP/M aber auch nur auf Z-80 Maschinen.
 
Hallo.

Ich habe gerade angefangen, mich mit einem tollen alten Intel 8080 auseinander zu setzen. Leider krieg ich die Bedienung nicht so richtig hin :(

Das waren noch richtige Rechner - auch wenn es schon damals schönere CPUs gab ;). Schreib doch mal ein paar Details zum System - welche CP/M-Version, verwendest du den mitgelieferten ASM-Assembler oder einen anderen?

*EDIT*
Hab's gerade mal mit MVI A | XXX | STA | YYY YYY | HLT versucht (also X an der Stelle Y zu speichern) - das scheint nicht geklappt zu haben. War die Idee ganz doof? Warum? Argh!^^

Ich hab auch 20 Jahre keinen 8080 mehr in den Händen gehabt, aber das sieht erstmal nicht schlecht aus (siehe auch http://www.iso.port.ac.uk/~mike/interests/chistory/documents/cpm-22-manual/ch3.html).

Allerdings ist die Schreibweise etwas ungewöhnlich, ich würde es

Code:
   ORG 100h
label:
   MVI A, 42
   STA 4711
   JMP 0
   END

schreiben. Das ORG 100h ist wichtig, CP/M-Programme beginnen immer im RAM bei Adresse (hexadezimal) 100. Bei der Verwendung von Konstanten (hier 42, 4711) muss man evtl. aufpassen, welche Zahlensysteme (dezimal, oktal, hexadezimal) der Assembler erwartet - vielleicht liegt da schon das Problem. Ansonsten ist das HLT evtl. auch das Problem - eigentlich solltest du am Ende eines Programms wieder zu CP/M zurückspringen, HLT hält aber die CPU an. Mit JMP 0 springst du stattdessen zu CP/M zurück. Ein schönes Programmbeispiel gibt's hier.

Was willst du denn genau erreichen?

CP/M ist übrigens grade wieder ziemlich in - einige Leute basteln an einem 8080+CP/M-Software-Emulator für AVR-Mikrocontroller, das ist ein ziemlich geniales (wenn auch total sinnbefreites...) Projekt:

Projektseite und Thread bei mikrocontroller.net

Da sind (neben den üblichen Forums-Deppen) eine Menge hilfsbereiter und fähiger Leute unterwegs, die dir vielleicht auch weiterhelfen können.

Viel Spaß noch mit dem 8080,
Michael
 
Zuletzt bearbeitet:
Digital Research entwickelte auch noch ein CP/M-86 für Intel-PCs. Habe selbst in den 1980er Jahren ein Programmierpraktikum auf Siemens-Maschinen mit Intel 8086-CPU (Siemens war Lizenznehmer und durfte Intel-CPUs 'nachbauen') unter CP/M-86 machen dürfen. CP/M-86 war der Versuch gegenüber MS-DOS Marktanteile zurück zu gewinnen (vor MS-DOS war Digital Research mit CP/M auf Z80-CPUs Quasimonopolist für 'kleinere' Rechner). Hat leider nicht funktioniert. CP/M-86 war MS-DOS locker um eine Dekade voraus (Multitasking etc.), aber der Zug war schon abgefahren, mit Bill Gates als Lokomotivführer.

Ausser diesem kleinen historischen Abriss kann ich zur Beantwortung Deiner Frage leider nichts beitragen. Sorry, ist einfach zu lange her.
 
Zurück
Oben Unten