Hallo zusammen Ich versuche mich derzeit gerade an den Basics... Einem Intel 4004 System. Genauer gesagt einem MCS-4 Das System seht ihr im Bild im Anhang. Wie zu sehen ist, sind die IOs einerseits im RAM vorhanden, andererseits auch im ROM. Nun würde ich gerne ganz simpel ein paar IOs setzen und dies evtl. noch in Abhängigkeit eines Inputs. Dazu habe ich diesen Emulator gefunden: http://e4004.szyc.org/emu/ Das Instruction set gibts hier: http://e4004.szyc.org/iset.html Und hier noch das Manual für das MCS-4 http://bitsavers.trailing-edge.com/components/intel/MCS4/MCS-4_Assembly_Language_Programming_Manual_Dec73.pdf Wie es aussieht, muss ich wohl den Befehl WMP verwenden. Leider sind meine Assemblerskills relativ schlecht geworden. Offenbar ist das höherwertige nibble der Portzustand (1110). Aber ich vermute, durch alleiniges ausführen von 1110|0001 werde ich noch keinen Output port beschreiben. Würde mich sehr über Hilfe freuen :) Danke und Gruss Holger
ich verstehe das so: 1. select rom (oder ram) 2. Wert in Akku 3. WRR (oder WMP)
Helge schrieb: > ich verstehe das so: > 1. select rom (oder ram) > 2. Wert in Akku > 3. WRR (oder WMP) Danke für die Antwort. Da steht ja noch "selected by the last SRC command". Also zuerst SRC, dann LDM und dann WMP ? SRC sieht so aus: 0010 RRR1 Also 0010 | 0001 für Chip 0 ? Dann LOADM 1101 DDDD Also 1101 | 0001 um das Q0 auf High zu setzen? und dann WMP 1110 0001
Hat teilweise funktioniert :) Hier der code:
1 | FIM R0, $00 |
2 | SRC R0 |
3 | LDM $04 |
4 | WMP |
Das assembly:
1 | :05000000200021D4E105 |
2 | :00000001FF |
http://e4004.szyc.org/asm.html Leider schreibt das Programm in den Output des RAMs und nicht des ROMs. Da muss ich wohl WMP durch WRR ersetzen...
:
Bearbeitet durch User
Hat jemand eine Idee, warum hier der Jump nicht funktioniert?
1 | FIM R0, $00 |
2 | SRC R0 |
3 | LDM R0 |
4 | DONE |
5 | IAC |
6 | WRR |
7 | WMP |
8 | JUN DONE |
Die Sprungadresse ist immer $0F2 Problem gelöst. Es muss der Object Code und nicht der HEX-Code geladen werden. Beim HEX-Code gibt es zusätzliche NOPs.
:
Bearbeitet durch User
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.