Beiträge von mos6581

    Ja klar :)

    das ist für mich nicht so ein Problem da ich schon verschiedenste Computer unter den Pfoten hatte..

    Jetzt ist bei Mir Zilog Zeit :)
    Habe mich durch Wüsten von z80 Assembler code gewühlt die letzten Tage...
    Der Debugger ist ein Freund :)
    Der allerschlimmste CPU war ein Signetics 2650 ... Das war ein Aas.

    (Bally Las Vegas Automat)

    ja und sauber ist es dann so.......
    Danke Daybyter, dein Approach war in die richtige Richtung ;)



    Vielen Dank für die nützlichen Infos.

    Danke für den Tip über den Akku eine Speicherzelle zu decrementieren.


    Ich habe mein Beispiel in verschiedenen Online Assembler(in ermangelung eines passenden Windows Z80 ASM) websites eingegeben und keine hat es fehlerfrei assembliert.

    Meine alten DOS Z80 Assembler habe ich verloren da mein alter 1995 Laptop das zeitliche inzwischen gesegnet hat (Dalls Uhrbatterie im Eimer)

    BIOS kommt nicht klar weil ich die Festplattenparameter (heads,cylinder,bla bla) inzwischen vergessen habe und damals zu dumm war

    das auf die Platte zu schreiben (analog meine ich)


    also ich habe jetzt meinen code entsprechend modifiziert, per Hand assembliert und denke das er nicht richtig funktioniert.

    Mein Ziel ist es den Code in ein Arcade Spiel am Mame hinein zu integrieren.


    Warum das ganze:

    Ich portiere ein Arcade Spiel auf eine andere Spielplatine des gleichen Herstellers.

    Der Spielcode braucht IRQ0 (RST 38) und IRQ10 (RST 10) um die Spielfiguren zu animieren und musik zu spielen (welche auf einem 2. Z80 Läuft)

    verbunden mit der ersten über ein Soundlatch (=communikationsspeicherzelle) und einen IRQ.

    In meiner aktuellen Spielplatine wird aber nur RST 38 verwendet und den RST 10 nie, da die Hardware dazu fehlt.

    alle 16 Vertical Blanks (RST10) führe ich einen RST 38 aus um den Rest des Spiels updaten zu lassen.


    Hallo Leute,


    Ich versuchte heute mein ersten Z80 codeseqment zu Programmieren. Da ich von der 6502 seite komme habe ich irgendwie Verständisschwierigkeit das umzusetzen:


    Ich möchte ein Programm in den Speicher schreiben welches


    dec RamWertAusSpeicherzelle FE80

    springe wenn ungleich 0 nach Weiter

    setze Speicherzelle auf 16

    Springe zu $0038


    Weiter:

    Springe $0010


    Habe das so ausformuliert:


    ld a,(fe80)

    dec a

    ld (fe80),a ; zurückschreiben

    jr nz, weiter

    ld fe80,$10

    jp $0038


    Weiter:

    jp $0010


    Irgendwie kann ich das nicht fehlerfrei assemblieren....


    Weiß jemand wie so ein einfaches Beispiel laufen kann ?


    grüße

    Mos