home *** CD-ROM | disk | FTP | other *** search
- /* z80.h */
-
- /*
- * (C) Copyright 1989
- * All Rights Reserved
- *
- * Alan R. Baldwin
- * 721 Berkeley St.
- * Kent, Ohio 44240
- */
-
- /*)BUILD
- $(PROGRAM) = ASZ80
- $(INCLUDE) = {
- ASM.H
- Z80.H
- }
- $(FILES) = {
- Z80EXT.C
- Z80MCH.C
- Z80ADR.C
- Z80PST.C
- ASMAIN.C
- ASLEX.C
- ASSYM.C
- ASSUBR.C
- ASEXPR.C
- ASDATA.C
- ASLIST.C
- ASOUT.C
- }
- $(STACK) = 2000
- */
-
- /*
- * Indirect Addressing delimeters
- */
- #define LFIND '('
- #define RTIND ')'
-
- /*
- * Registers
- */
- #define B 0
- #define C 1
- #define D 2
- #define E 3
- #define H 4
- #define L 5
- #define A 7
-
- #define I 0107
- #define R 0117
-
- #define BC 0
- #define DE 1
- #define HL 2
- #define SP 3
- #define AF 4
- #define IX 5
- #define IY 6
-
- /*
- * Conditional definitions
- */
- #define NZ 0
- #define Z 1
- #define NC 2
- #define CS 3
- #define PO 4
- #define PE 5
- #define P 6
- #define M 7
-
- /*
- * Symbol types
- */
- #define S_IMMED 30
- #define S_R8 31
- #define S_R8X 32
- #define S_R16 33
- #define S_R16X 34
- #define S_CND 35
- #define S_FLAG 36
-
- /*
- * Indexing modes
- */
- #define S_INDB 40
- #define S_IDC 41
- #define S_INDR 50
- #define S_IDBC 50
- #define S_IDDE 51
- #define S_IDHL 52
- #define S_IDSP 53
- #define S_IDIX 55
- #define S_IDIY 56
- #define S_INDM 57
-
- /*
- * Instruction types
- */
- #define S_LD 60
- #define S_CALL 61
- #define S_JP 62
- #define S_JR 63
- #define S_RET 64
- #define S_BIT 65
- #define S_INC 66
- #define S_DEC 67
- #define S_ADD 68
- #define S_ADC 69
- #define S_AND 70
- #define S_EX 71
- #define S_PUSH 72
- #define S_IN 73
- #define S_OUT 74
- #define S_RL 75
- #define S_RST 76
- #define S_IM 77
- #define S_INH1 78
- #define S_INH2 79
- #define S_DJNZ 80
- #define S_SUB 81
- #define S_SBC 82
-
- /*
- * HD64180 Instructions
- */
- #define X_HD64 90
- #define X_INH2 91
- #define X_IN 92
- #define X_OUT 93
- #define X_MLT 94
- #define X_TST 95
- #define X_TSTIO 96
-
- struct adsym
- {
- char a_str[4]; /* addressing string */
- int a_val; /* addressing mode value */
- };
-
- extern struct adsym R8[];
- extern struct adsym R8X[];
- extern struct adsym R16[];
- extern struct adsym R16X[];
- extern struct adsym CND[];
-
- /* machine dependent functions */
-
- /* z80adr.c */
- extern int addr();
- extern int admode();
- extern int any();
- extern int srch();
-
- /* z80mch.c */
- extern VOID comma();
- extern int genop();
- extern int gixiy();
- extern VOID machin();
- extern VOID minit();
-
-