home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / ENTERPRS / CPM / UTILS / A / 28MAY87.ARK / Z80.LIB < prev   
Text File  |  1989-09-27  |  6KB  |  463 lines

  1. ;    @CHK MACRO USED FOR CHECKING 8 BIT DISPLACMENTS
  2. ;
  3. @CHK    MACRO    ?DD    ;; USED FOR CHECKING RANGE OF 8-BIT DISP.S
  4.     IF (?DD GT 7FH) AND (?DD LT 0FF80H)
  5.  'DISPLACEMENT RANGE ERROR - Z80 LIB'
  6.     ENDIF
  7.     ENDM
  8. LDX    MACRO    ?R,?D    
  9.     @CHK    ?D
  10.     DB    0DDH,?R*8+46H,?D
  11.     ENDM
  12. LDY    MACRO    ?R,?D    
  13.     @CHK    ?D
  14.     DB    0FDH,?R*8+46H,?D
  15.     ENDM
  16. STX    MACRO    ?R,?D    
  17.     @CHK    ?D
  18.     DB    0DDH,70H+?R,?D
  19.     ENDM
  20. STY    MACRO    ?R,?D    
  21.     @CHK    ?D
  22.     DB    0FDH,70H+?R,?D
  23.     ENDM
  24. MVIX    MACRO    ?N,?D    
  25.     @CHK    ?D
  26.     DB    0DDH,36H,?D,?N
  27.     ENDM
  28. MVIY    MACRO    ?N,?D    
  29.     @CHK    ?D
  30.     DB    0FDH,36H,?D,?N
  31.     ENDM
  32. LDAI    MACRO        
  33.     DB    0EDH,57H
  34.     ENDM
  35. LDAR    MACRO        
  36.     DB    0EDH,5FH
  37.     ENDM
  38. STAI    MACRO        
  39.     DB    0EDH,47H
  40.     ENDM
  41. STAR    MACRO        
  42.     DB    0EDH,4FH
  43.     ENDM
  44.  
  45. LXIX    MACRO    ?NNNN    
  46.     DB    0DDH,21H
  47.     DW    ?NNNN
  48.     ENDM
  49. LXIY    MACRO    ?NNNN    
  50.     DB    0FDH,21H
  51.     DW    ?NNNN
  52.     ENDM
  53. LDED    MACRO    ?NNNN    
  54.     DB    0EDH,5BH
  55.     DW    ?NNNN
  56.     ENDM
  57. LBCD    MACRO    ?NNNN    
  58.     DB    0EDH,4BH
  59.     DW    ?NNNN
  60.     ENDM
  61. LSPD    MACRO    ?NNNN    
  62.     DB    0EDH,07BH
  63.     DW    ?NNNN
  64.     ENDM
  65. LIXD    MACRO    ?NNNN    
  66.     DB    0DDH,2AH
  67.     DW    ?NNNN
  68.     ENDM
  69. LIYD    MACRO    ?NNNN    
  70.     DB    0FDH,2AH
  71.     DW    ?NNNN
  72.     ENDM
  73. SBCD    MACRO    ?NNNN    
  74.     DB    0EDH,43H
  75.     DW    ?NNNN
  76.     ENDM
  77. SDED    MACRO    ?NNNN    
  78.     DB    0EDH,53H
  79.     DW    ?NNNN
  80.     ENDM
  81. SSPD    MACRO    ?NNNN    
  82.     DB    0EDH,73H
  83.     DW    ?NNNN
  84.     ENDM
  85. SIXD    MACRO    ?NNNN    
  86.     DB    0DDH,22H
  87.     DW    ?NNNN
  88.     ENDM
  89. SIYD    MACRO    ?NNNN    
  90.     DB    0FDH,22H
  91.     DW    ?NNNN
  92.     ENDM
  93. SPIX    MACRO        
  94.     DB    0DDH,0F9H
  95.     ENDM
  96. SPIY    MACRO        
  97.     DB    0FDH,0F9H
  98.     ENDM
  99. PUSHIX    MACRO        
  100.     DB    0DDH,0E5H
  101.     ENDM
  102. PUSHIY    MACRO        
  103.     DB    0FDH,0E5H
  104.     ENDM
  105. POPIX    MACRO        
  106.     DB    0DDH,0E1H
  107.     ENDM
  108. POPIY    MACRO        
  109.     DB    0FDH,0E1H
  110.     ENDM
  111. EXAF    MACRO        
  112.     DB    08H
  113.     ENDM
  114. EXX    MACRO        
  115.     DB    0D9H
  116.     ENDM
  117. XTIX    MACRO        
  118.     DB    0DDH,0E3H
  119.     ENDM
  120. XTIY    MACRO        
  121.     DB    0FDH,0E3H
  122.     ENDM
  123.  
  124. LDI    MACRO        
  125.     DB    0EDH,0A0H
  126.     ENDM
  127. LDIR    MACRO        
  128.     DB    0EDH,0B0H
  129.     ENDM
  130. LDD    MACRO        
  131.     DB    0EDH,0A8H
  132.     ENDM
  133. LDDR    MACRO        
  134.     DB    0EDH,0B8H
  135.     ENDM
  136. CCI    MACRO        
  137.     DB    0EDH,0A1H
  138.     ENDM
  139. CCIR    MACRO        
  140.     DB    0EDH,0B1H
  141.     ENDM
  142. CCD    MACRO        
  143.     DB    0EDH,0A9H
  144.     ENDM
  145. CCDR    MACRO        
  146.     DB    0EDH,0B9H
  147.     ENDM
  148.  
  149. ADDX    MACRO    ?D    
  150.     @CHK    ?D
  151.     DB    0DDH,86H,?D
  152.     ENDM
  153. ADDY    MACRO    ?D    
  154.     @CHK    ?D
  155.     DB    0FDH,86H,?D
  156.     ENDM
  157. ADCX    MACRO    ?D    
  158.     @CHK    ?D
  159.     DB    0DDH,8EH,?D
  160.     ENDM
  161. ADCY    MACRO    ?D    
  162.     @CHK    ?D
  163.     DB    0FDH,8EH,?D
  164.     ENDM
  165. SUBX    MACRO    ?D    
  166.     @CHK    ?D
  167.     DB    0DDH,96H,?D
  168.     ENDM
  169. SUBY    MACRO    ?D    
  170.     @CHK    ?D
  171.     DB    0FDH,96H,?D
  172.     ENDM
  173. SBCX    MACRO    ?D    
  174.     @CHK    ?D
  175.     DB    0DDH,9EH,?D
  176.     ENDM
  177. SBCY    MACRO    ?D    
  178.     @CHK    ?D
  179.     DB    0FDH,9EH,?D
  180.     ENDM
  181. ANDX    MACRO    ?D    
  182.     @CHK    ?D
  183.     DB    0DDH,0A6H,?D
  184.     ENDM
  185. ANDY    MACRO    ?D    
  186.     @CHK    ?D
  187.     DB    0FDH,0A6H,?D
  188.     ENDM
  189. XORX    MACRO    ?D    
  190.     @CHK    ?D
  191.     DB    0DDH,0AEH,?D
  192.     ENDM
  193. XORY    MACRO    ?D    
  194.     @CHK    ?D
  195.     DB    0FDH,0AEH,?D
  196.     ENDM
  197. ORX    MACRO    ?D    
  198.     @CHK    ?D
  199.     DB    0DDH,0B6H,?D
  200.     ENDM
  201. ORY    MACRO    ?D    
  202.     @CHK    ?D
  203.     DB    0FDH,0B6H,?D
  204.     ENDM
  205. CMPX    MACRO    ?D    
  206.     @CHK    ?D
  207.     DB    0DDH,0BEH,?D
  208.     ENDM
  209. CMPY    MACRO    ?D    
  210.     @CHK    ?D
  211.     DB    0FDH,0BEH,?D
  212.     ENDM
  213. INRX    MACRO    ?D    
  214.     @CHK    ?D
  215.     DB    0DDH,34H,?D
  216.     ENDM
  217. INRY    MACRO    ?D    
  218.     @CHK    ?D
  219.     DB    0FDH,34H,?D
  220.     ENDM
  221. DCRX    MACRO    ?D    
  222.     @CHK    ?D
  223.     DB    0DDH,035H,?D
  224.     ENDM
  225. DCRY    MACRO    ?D    
  226.     @CHK    ?D
  227.     DB    0FDH,35H,?D
  228.     ENDM
  229.  
  230. NEG    MACRO        
  231.     DB    0EDH,44H
  232.     ENDM
  233. IM0    MACRO        
  234.     DB    0EDH,46H
  235.     ENDM
  236. IM1    MACRO        
  237.     DB    0EDH,56H
  238.     ENDM
  239. IM2    MACRO        
  240.     DB    0EDH,5EH
  241.     ENDM
  242.  
  243.  
  244. BC    EQU    0
  245. DE    EQU    2
  246. HL    EQU    4
  247. IX    EQU    4    
  248. IY    EQU    4    
  249. DADC    MACRO    ?R    
  250.     DB    0EDH,?R*8+4AH
  251.     ENDM
  252. DSBC    MACRO    ?R    
  253.     DB    0EDH,?R*8+42H
  254.     ENDM
  255. DADX    MACRO    ?R    
  256.     DB    0DDH,?R*8+09H
  257.     ENDM
  258. DADY    MACRO    ?R    
  259.     DB    0FDH,?R*8+09H
  260.     ENDM
  261. INXIX    MACRO        
  262.     DB    0DDH,23H
  263.     ENDM
  264. INXIY    MACRO        
  265.     DB    0FDH,23H
  266.     ENDM
  267. DCXIX    MACRO        
  268.     DB    0DDH,2BH
  269.     ENDM
  270. DCXIY    MACRO        
  271.     DB    0FDH,2BH
  272.     ENDM
  273.  
  274. BIT    MACRO    ?N,?R    
  275.     DB    0CBH,?N*8+?R+40H
  276.     ENDM
  277. SETB    MACRO    ?N,?R
  278.     DB    0CBH,?N*8+?R+0C0H
  279.     ENDM
  280. RES    MACRO    ?N,?R
  281.     DB    0CBH,?N*8+?R+80H
  282.     ENDM
  283.  
  284. BITX    MACRO    ?N,?D    
  285.     @CHK    ?D
  286.     DB    0DDH,0CBH,?D,?N*8+46H
  287.     ENDM
  288. BITY    MACRO    ?N,?D    
  289.     @CHK    ?D
  290.     DB    0FDH,0CBH,?D,?N*8+46H
  291.     ENDM
  292. SETX    MACRO    ?N,?D    
  293.     @CHK    ?D
  294.     DB    0DDH,0CBH,?D,?N*8+0C6H
  295.     ENDM
  296. SETY    MACRO    ?N,?D    
  297.     @CHK    ?D
  298.     DB    0FDH,0CBH,?D,?N*8+0C6H
  299.     ENDM
  300. RESX    MACRO    ?N,?D    
  301.     @CHK    ?D
  302.     DB    0DDH,0CBH,?D,?N*8+86H
  303.     ENDM
  304. RESY    MACRO    ?N,?D    
  305.     @CHK    ?D
  306.     DB    0FDH,0CBH,?D,?N*8+86H
  307.     ENDM
  308.  
  309. JR    MACRO    ?N
  310.     DB    18H,?N-$-1
  311.     @CHK    ?N-$-3
  312.     ENDM
  313. JRC    MACRO    ?N
  314.     DB    38H,?N-$-1
  315.     @CHK    ?N-$-3
  316.     ENDM
  317. JRNC    MACRO    ?N
  318.     DB    30H,?N-$-1
  319.     @CHK    ?N-$-3
  320.     ENDM
  321. JRZ    MACRO    ?N
  322.     DB    28H,?N-$-1
  323.     @CHK    ?N-$-3
  324.     ENDM
  325. JRNZ    MACRO    ?N
  326.     DB    20H,?N-$-1
  327.     @CHK    ?N-$-3
  328.     ENDM
  329. DJNZ    MACRO    ?N
  330.     DB    10H,?N-$-1
  331.     @CHK    ?N-$-3
  332.     ENDM
  333.  
  334. PCIX    MACRO        
  335.     DB    0DDH,0E9H
  336.     ENDM
  337. PCIY    MACRO        
  338.     DB    0FDH,0E9H
  339.     ENDM
  340.  
  341. RETI    MACRO        
  342.     DB    0EDH,4DH
  343.     ENDM
  344. RETN    MACRO        
  345.     DB    0EDH,45H
  346.     ENDM
  347.  
  348. INP    MACRO    ?R    
  349.     DB    0EDH,?R*8+40H
  350.     ENDM
  351. OUTP    MACRO    ?R    
  352.     DB    0EDH,?R*8+41H
  353.     ENDM
  354. INI    MACRO        
  355.     DB    0EDH,0A2H
  356.     ENDM
  357. INIR    MACRO        
  358.     DB    0EDH,0B2H
  359.     ENDM
  360. IND    MACRO        
  361.     DB    0EDH,0AAH
  362.     ENDM
  363. INDR    MACRO        
  364.     DB    0EDH,0BAH
  365.     ENDM
  366. OUTI    MACRO        
  367.     DB    0EDH,0A3H
  368.     ENDM
  369. OUTIR    MACRO        
  370.     DB    0EDH,0B3H
  371.     ENDM
  372. OUTD    MACRO        
  373.     DB    0EDH,0ABH
  374.     ENDM
  375. OUTDR    MACRO        
  376.     DB    0EDH,0BBH
  377.     ENDM
  378.  
  379.  
  380. RLCR    MACRO    ?R    
  381.     DB    0CBH, 00H + ?R
  382.     ENDM
  383. RLCX    MACRO    ?D    
  384.     @CHK    ?D
  385.     DB    0DDH, 0CBH, ?D, 06H
  386.     ENDM
  387. RLCY    MACRO    ?D    
  388.     @CHK    ?D
  389.     DB    0FDH, 0CBH, ?D, 06H
  390.     ENDM
  391. RALR    MACRO    ?R    
  392.     DB    0CBH, 10H+?R
  393.     ENDM
  394. RALX    MACRO    ?D    
  395.     @CHK    ?D
  396.     DB    0DDH, 0CBH, ?D, 16H
  397.     ENDM
  398. RALY    MACRO    ?D    
  399.     @CHK    ?D
  400.     DB    0FDH, 0CBH, ?D, 16H
  401.     ENDM
  402. RRCR    MACRO    ?R    
  403.     DB    0CBH, 08H + ?R
  404.     ENDM
  405. RRCX    MACRO    ?D    
  406.     @CHK    ?D
  407.     DB    0DDH, 0CBH, ?D, 0EH
  408.     ENDM
  409. RRCY    MACRO    ?D    
  410.     @CHK    ?D
  411.     DB    0FDH, 0CBH, ?D, 0EH
  412.     ENDM
  413. RARR    MACRO    ?R    
  414.     DB    0CBH, 18H + ?R
  415.     ENDM
  416. RARX    MACRO    ?D    
  417.     @CHK    ?D
  418.     DB    0DDH, 0CBH, ?D, 1EH
  419.     ENDM
  420. RARY    MACRO    ?D    
  421.     @CHK    ?D
  422.     DB    0FDH, 0CBH, ?D, 1EH
  423.     ENDM
  424. SLAR    MACRO    ?R    
  425.     DB    0CBH, 20H + ?R
  426.     ENDM
  427. SLAX    MACRO    ?D    
  428.     @CHK    ?D
  429.     DB    0DDH, 0CBH, ?D, 26H
  430.     ENDM
  431. SLAY    MACRO    ?D    
  432.     @CHK    ?D
  433.     DB    0FDH, 0CBH, ?D, 26H
  434.     ENDM
  435. SRAR    MACRO    ?R    
  436.     DB    0CBH, 28H+?R
  437.     ENDM
  438. SRAX    MACRO    ?D    
  439.     @CHK    ?D
  440.     DB    0DDH, 0CBH, ?D, 2EH
  441.     ENDM
  442. SRAY    MACRO    ?D    
  443.     @CHK    ?D
  444.     DB    0FDH, 0CBH, ?D, 2EH
  445.     ENDM
  446. SRLR    MACRO    ?R    
  447.     DB    0CBH, 38H + ?R
  448.     ENDM
  449. SRLX    MACRO    ?D    
  450.     @CHK    ?D
  451.     DB    0DDH, 0CBH, ?D, 3EH
  452.     ENDM
  453. SRLY    MACRO    ?D    
  454.     @CHK    ?D
  455.     DB    0FDH, 0CBH, ?D, 3EH
  456.     ENDM
  457. RLD    MACRO        
  458.     DB    0EDH, 6FH
  459.     ENDM
  460. RRD    MACRO        
  461.     DB    0EDH, 67H
  462.     ENDM
  463.