.xlist .request solcpm ; Definitionsdatei fuer SOL Spiele ; auf dem JOYCE ; Werner Cirsovius, Maerz 2002 ;+++++++++++++++++++++++++++++++++ ; ; Gaengige CP/M und JOYCE-Werte false equ 0 true equ not false OS equ 0000h BDOS equ 0005h ; .condir equ 6 ; _STA equ 0feh _CI equ 0ffh ; _USERF equ 30 ; BIOS Funktion ; _SCRRUN equ 000e9h ; XBIOS Funktion ; CHRMTX equ 0b800h ; Zeichenmatrix COMRAM equ 0c000h ; Common Memory ; MTRX equ 8 ; Laenge einer Matrix ; LoMask equ 00001111b HiMask equ 11110000b LSB equ 00000001b MSB equ 10000000b NoMSB equ 01111111b even equ 11111110b upper equ 11011111b ; null equ 000h eot equ 000h etx equ 001h cr equ 00dh lf equ 00ah esc equ 01bh nl equ 0ffh ; Speziell fuer CR/LF Umsetzung ; ; Spezielle Zeichen von SOL ; ; Speziell fuer TARGET: ; _msl equ 01h ; Geschoss _rup equ 02h ; Rakete hoch _rdw equ 03h ; Rakete runter ; ; Speziell fuer PONG: ; _bal equ 10h ; Ball ; ; Speziell fuer REVERSI: ; _hpi equ 11h ; Spieler ; ; Speziell fuer deutschen Zeichensatz ; _bae equ 19h ; Grosses AE _ae equ 1ah ; Kleines ae _boe equ 1bh ; Grosses OE _oe equ 1ch ; Kleines oe _bue equ 1dh ; Grosses UE _ue equ 1eh ; Kleines ue _sz equ 1fh ; Deutsches sz ; ; "Normale" SOL-Zeichen ; _fls equ 04h ; (ET) Speziell _bcr equ 05h ; (EQ) Kasten mit Kreuz _bel equ 07h ; (BL) Klingel _arr equ 09h ; (HT) Pfeil rechts _ard equ 0bh ; (VT) Pfeil runter _dwn equ 0ch ; (FF) Speziell _arl equ 0dh ; (CR) Pfeil links _ccr equ 0eh ; (SO) Kreis mit Kreuz _cid equ 0fh ; (SI) Kreis mit Punkt _sls equ 2fh ; Schraegstrich _lfb equ 5bh ; Eckige Klammer links _bsl equ 5ch ; Schraegstrich, revers _lfr equ 5dh ; Eckige Klammer rechts _aru equ 5eh ; Pfeil hoch ; maxrow equ 16 ; Maximale Zeilen maxcol equ 64 ; Maximale Spalten ; vidspc equ maxcol*maxrow ; SOLvid equ 0cc00h ; SOL Videoadresse VidTop equ SOLvid+vidspc ; Ende der Adresse ; RSTadr equ 0008h ; Erster RST (RST 08h) RSTlen equ 8 _JP equ 0c3h ; Z80 JP code ; ld_a_hl macro rst 08h endm ld_a_de macro rst 10h endm ld_hl_a macro rst 18h endm ld_hl_8 macro val rst 20h db val endm ld_de_a macro rst 28h endm ld_a_bc macro push hl ld l,c ld h,b ld_a_hl pop hl endm ld_bc_a macro push hl ld l,c ld h,b ld_hl_a pop hl endm ld_@_a macro val push hl ld hl,val ld_hl_a pop hl endm ld_a_@ macro val push hl ld hl,val ld_a_hl pop hl endm ld_hl_b macro push af ld a,b ld_hl_a pop af endm ld_hl_c macro push af ld a,c ld_hl_a pop af endm ld_hl_d macro push af ld a,d ld_hl_a pop af endm ld_hl_e macro push af ld a,e ld_hl_a pop af endm .list