home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 2 / FFMCD02.bin / new / misc / emu / z80 / extern_instr.a < prev    next >
Text File  |  1993-12-21  |  4KB  |  160 lines

  1. ** This file compiles to object code, to be linked along with the object
  2. ** code of Z80.a, if that was compiled with the 'generic object' option.
  3.  
  4. ** VERBOSE
  5. ** Define for progress messages during Compilation.
  6.  
  7. ** GENERIC_INSTR = -1
  8. ** Define to use the generic versions of the implementation-dependent
  9. ** instructions (in 'generic_macs.i'). Otherwise, you will have to provide
  10. ** your own macros in a file named 'machine_macs.i' (or edit below if you
  11. ** prefer another name).
  12.  
  13. **   The following flags affect the compilation choices in the include
  14. ** files, particularly Z80_coding.i and Z80_struct.i. Make sure you use
  15. ** the same options that were used for the Z80.a object code.
  16.  
  17. PROCESSOR EQU 68030
  18. ** Define to any of 68000, 68010, 68020, 68030 or 68040. The 68000 version
  19. ** uses move to/from status register
  20.  
  21. ** Z80_MEMCHECK SET 1
  22. ** Define to use memory write access checking.
  23. ** See the file Z80.i for more information about this.
  24.  
  25. ** UPDATECACHE SET 1
  26. ** Define to update the cache on every write to Z80 memory. This is done
  27. ** by simply clearing the corresponding word in the cache. If this option
  28. ** is not used, modified code will never work.
  29.  
  30. ** MODIFIEDCODE SET 1
  31. ** Define to detect (and allow) modified code even in multi-byte opcodes.
  32. ** Pretty damn useless if UPDATECACHE is not defined. If this option is
  33. ** not used, then modifications that only change the second or third bytes
  34. ** of the opcode, but not the first byte, will not be detected.
  35.  
  36. ** UNDOCINSTR_UNDEF SET 1
  37. ** Define if you want the "undocumented" instructions to be considered
  38. ** as undefined instructions.
  39.  
  40. ** BCDFLAGS
  41. ** Define if you want the arithmetic instructions to store information
  42. ** so that a following Daa will work correctly (see the file "notes.txt"
  43. ** for details).
  44.  
  45. ** =======================================================================
  46.  
  47.     INCLUDE Z80.i
  48.  
  49.     INCLUDE Z80_struct.i
  50.  
  51.     INCLUDE Z80_coding.i
  52.  
  53.     IFD    GENERIC_INSTR
  54.     INCLUDE generic_macs.i
  55.     ELSE
  56.     INCLUDE machine_macs.i
  57.     ENDC
  58.  
  59. ** ------------
  60. ** It may be necessary to import some constants used in the macros:
  61. ** XREF.L is Devpac 3 notation.
  62.  
  63.     XREF.L    stale_ptr
  64.  
  65. ** ------------
  66.  
  67. Z80_In_r_1C1    MACRO
  68.     XDEF    Z80_In_\1_1C1
  69. Z80_In_\1_1C1    opcode_2_bytes
  70.         In_r_1C1_mac \1
  71.         ENDM
  72.     do_r Z80_In_r_1C1
  73.  
  74.     XDEF    Z80_In_H_1C1
  75. Z80_In_H_1C1    opcode_2_bytes
  76.         In_H_1C1_mac
  77.  
  78.     XDEF    Z80_In_xx_1C1
  79. Z80_In_xx_1C1    opcode_2_bytes        ;undefined
  80.         In_xx_1C1_mac
  81.  
  82.     XDEF    Z80_In_A_1n1
  83. Z80_In_A_1n1    In_A_1n1_mac
  84.  
  85.     XDEF    Z80_Ind
  86. Z80_Ind     opcode_2_bytes
  87.         Ind_mac
  88.  
  89.     XDEF    Z80_Indr
  90. Z80_Indr    opcode_2_bytes
  91.         Indr_mac
  92.  
  93.     XDEF    Z80_Ini
  94. Z80_Ini     opcode_2_bytes
  95.         Ini_mac
  96.  
  97.     XDEF    Z80_Inir
  98. Z80_Inir    opcode_2_bytes
  99.         Inir_mac
  100.  
  101.     XDEF    Z80_Ld_A_R
  102. Z80_Ld_A_R    opcode_2_bytes
  103.         Ld_A_R_mac
  104.  
  105.     XDEF    Z80_Ld_R_A
  106. Z80_Ld_R_A    opcode_2_bytes
  107.         Ld_R_A_mac
  108.  
  109.     XDEF    Z80_Lddr
  110. Z80_Lddr    opcode_2_bytes
  111.         Lddr_mac
  112.  
  113.     XDEF    Z80_Ldir
  114. Z80_Ldir    opcode_2_bytes
  115.         Ldir_mac
  116.  
  117.     XDEF    Z80_Otdr
  118. Z80_Otdr    opcode_2_bytes
  119.         Otdr_mac
  120.  
  121.     XDEF    Z80_Otir
  122. Z80_Otir    opcode_2_bytes
  123.         Otir_mac
  124.  
  125. Z80_Out_1C1_r    MACRO
  126.     XDEF    Z80_Out_1C1_\1
  127. Z80_Out_1C1_\1    opcode_2_bytes
  128.         Out_1C1_r_mac \1
  129.         ENDM
  130.     do_r Z80_Out_1C1_r
  131.  
  132.     XDEF    Z80_Out_1C1_H
  133. Z80_Out_1C1_H    opcode_2_bytes
  134.         Out_1C1_H_mac
  135.  
  136.     XDEF    Z80_Out_1C1_xx
  137. Z80_Out_1C1_xx    opcode_2_bytes        ;undefined
  138.         Out_1C1_xx_mac
  139.  
  140.     XDEF    Z80_Out_1n1_A
  141. Z80_Out_1n1_A    Out_1n1_A_mac
  142.  
  143.     XDEF    Z80_Outd
  144. Z80_Outd    opcode_2_bytes
  145.         Outd_mac
  146.  
  147.     XDEF    Z80_Outi
  148. Z80_Outi    opcode_2_bytes
  149.         Outi_mac
  150.  
  151.     XDEF    Z80_Reti
  152. Z80_Reti    opcode_2_bytes
  153.         Reti_mac
  154.  
  155.     XDEF    Z80_Retn
  156. Z80_Retn    opcode_2_bytes
  157.         Retn_mac
  158.  
  159. ** ====================================================================
  160.