+++ /dev/null
- .xlist\r
-;;\r
-;; Z180 / HD64180 MACRO LIBRARY\r
-;;\r
-\r
-IFNDEF SLP\r
-\r
-;;\r
-;;\r
-;; HD64180 instructions:\r
-;;\r
-;; SLP ; Enter SLEEP mode\r
-;; MLT RR ; 8 bit multiply with 16 bit result\r
-;; IN0 R,P ; Input from internal port\r
-;; OUT0 P,R ; Output to internal port\r
-;; OTIM ; Block output, increment\r
-;; OTIMR ; Block output, increment and repeat\r
-;; OTDM ; Block output, decrement\r
-;; OTDMR ; Block output, decrement and repeat\r
-;; TSTIO P ; Non destructive AND, I/O port and A\r
-;; TST R ; Non destructive AND, reg and A\r
-;; TST ID ; Non destructive AND, immediate data and A\r
-;; TST (HL) ; Non destructive AND, (HL) and A\r
-;;\r
-;;\r
-\r
-??BC EQU 0 ; Double-register definitions\r
-??DE EQU 1\r
-??HL EQU 2\r
-??SP EQU 3\r
-\r
-??A EQU 7 ; Single-register defintions\r
-??B EQU 0\r
-??C EQU 1\r
-??D EQU 2\r
-??E EQU 3\r
-??H EQU 4\r
-??L EQU 5\r
-\r
-SLP MACRO\r
- DEFB 0EDH,76H\r
- ENDM\r
-\r
-MLT MACRO ?R\r
- DB 0EDH,4CH+(??&?R AND 3) SHL 4\r
- ENDM\r
-\r
-IN0 MACRO ?R,?P\r
- DB 0EDH,(??&?R AND 7) SHL 3, ?P\r
- ENDM\r
-\r
-OUT0 MACRO ?P,?R\r
- DB 0EDH,1+(??&?R AND 7) SHL 3,?P\r
- ENDM\r
-\r
-OTIM MACRO\r
- DB 0EDH,83H\r
- ENDM\r
-\r
-OTIMR MACRO\r
- DB 0EDH,93H\r
- ENDM\r
-\r
-OTDM MACRO\r
- DB 0EDH,8BH\r
- ENDM\r
-\r
-OTDMR MACRO\r
- DB 0EDH,9BH\r
- ENDM\r
-\r
-TSTIO MACRO ?P\r
- DB 0EDH,74H,?P\r
- ENDM\r
-\r
-TSTR MACRO ?R\r
- DB 0EDH,4+(??&?R AND 7) SHL 3\r
- ENDM\r
-\r
-TSTD MACRO ?P\r
- DB 0EDH,64H,?P\r
- ENDM\r
-\r
-TSTP MACRO\r
- DB 0EDH,34H\r
- ENDM\r
-\r
-TST MACRO ?R\r
- ?D: SET 0\r
- IRPC ?X,?R\r
- ?D: SET ?D+1 ; Count # chars in "?R"\r
- ENDM\r
- IF ?D EQ 1 ; IF # chars = 1\r
- IRPC ?X,ABCDEHL ; Look up the character\r
- IF ??&?X EQ ??&?R\r
- DB 0EDH,4+(??&?R AND 7) SHL 3\r
- EXITM\r
- ENDIF\r
- ENDM\r
- DB 0EDh,64h,?R\r
- EXITM\r
- ENDIF\r
- IF (?R = 2) & (?D = 4)\r
- ?D: SET 0\r
- IRPC ?X,?R\r
- IFIDN <?X>,<(>\r
- DB 0EDh,34h\r
- EXITM\r
- ENDIF\r
- ?D: SET ?D + 1\r
- ENDM\r
- ENDIF\r
- IF ?D NE 0\r
- DB 0EDH,64H,?R\r
- ENDIF\r
- ENDM\r
-\r
-ENDIF ;/* IFNDEF SLP /\r
- .list\r
-\r