📄 a915.asm
字号:
CP 0FFH
RET NZ
LD (SIORD),A
LD A,01
LD (SIORDP),A
RET
SIORE1: LD HL,SIORD
LD C,A
LD B,0
ADD HL,BC
LD (HL),E
INC C
LD A,C
LD (SIORDP),A
LD C,PL18
CALL DISIO
LD A,(SIORDP)
CP 8
JP Z,KED251 ; 等于,转
CP 18
JP Z,SED251 ; 等于,转
CP 6
JP Z,SDP ; 等于,转
CP 5
JP C,SIORE4 ; 小于,转
LD A,(SIORD+1)
CP 30H
RET Z
CP 31H
RET Z
CP 0FH ;1992,6,29
RET Z ;1992,6,29
LD A,0
LD (SIORDP),A
RET
SIORE4: CP 4
RET C
LD A,(SIORD+1)
CP 30H
RET Z
CP 31H
RET Z
CP 0FH ;1992,6,29
RET Z ;1992,6,29
CP 10H
JP NC,SIO1E ; 不小于,转
SIO0E: LD HL,SIORD+1
LD A,(SIORDP)
DEC A
LD C,A
LD B,0
ADD A,A
LD (DISW),A
LD DE,DISW+1
LDIR
CALL COMR4
RET
SIO1E: LD A,(SIORD+1) ;1992,8,29+++++
CP 17H
JP NC,SIO1E1 ; 不小于,转
ADD A,18H
LD (SIORD+1),A
JP SIO1E0
SIO1E1: CP 80H
JP C,SIO1E0 ; 小于,转
CP 0BFH
JP NC,SIO1E0 ; 不小于,转
SUB 40H
LD (SIORD+1),A
SIO1E0: CALL COMR4
RET ;1992,8,29
SDP: LD A,(SIORD+1) ;1992,7,4++++
CP 30H
RET Z
CP 31H
RET Z
CP 0FH
JP NZ,SDP1 ; 不等0F,转
LD A,(SDPW)
CP 17H
JP Z,SDP2 ; 等于,转
CP 71H
JP NZ,SDP3 ; 不等71,转
CALL SSD25
LD A,0
LD (SIORDP),A
RET
SDP1: LD A,0
LD (SIORDP),A
NOP ;(SDPW),0
RET
SDP2: LD HL,SIORD+1 ;(SDPW),0
LD A,(SIORDP)
DEC A
LD C,A
LD B,0
ADD A,A
LD (DISW),A
LD DE,DISW+1
LDIR
LD A,0
LD (SDPW),A
LD (SIORDP),A
RET
SDP3: LD A,0
LD (SIORDP),A
RET ;1992,6,29^^^^
ADS21: LD A,0
OUT (PC2),A
NOP
LD A,(WADD2)
OUT (PB2),A
INC A
LD (WADD2),A
LD A,10H
OUT (PC2),A
CALL STOP3
NOP
NOP
NOP
LD A,0
OUT (PC2),A
RET
DIS20: LD A,(SDPW1)
CP 6 ;1992,6,29+++
JP NZ,DIS20W ; 不等,转
DIS20R: LD A,(DISW)
CP 7
JP NZ,DIS20S ; 不等,转
LD A,(DISW+1)
JP DIS2B
DIS20S: CP 6
JP NZ,DIS20T ; 不等,转
LD A,(DISW+2)
JP DIS2A
DIS20T: CP 5
JP NZ,DIS20Q ; 不等,转
LD A,(DISW+2)
JP DIS2B
DIS20Q: CP 4
JP NZ,DIS20P ; 不等,转
LD A,(DISW+3)
JP DIS2A
DIS20P: CP 3
JP NZ,DIS20O ; 不等,转
LD A,(DISW+3)
JP DIS2B
DIS20O: CP 2
JP NZ,DIS20H ; 不等,转
LD A,(DISW+4)
JP DIS2A
DIS20H: CP 1
JP NZ,DIS20L ; 不等,转
LD A,0
LD (SDPW1),A
LD A,(DISW+4)
JP DIS2B
DIS20L: LD A,0
LD (DISW),A
LD (SDPW1),A
RET
DIS20W: LD A,(DISW)
CP 10
JP Z,DIS2P ;1992,6,29^^^^ 等于,转
LD A,(DISW)
CP 0
JP Z,DISDC ; 等于0,转
CP 6
JP Z,DIS206 ; 等于6,转
CP 5
JP Z,DIS205 ; 等于5,转
CP 4
JP Z,DIS204 ; 等于4,转
CP 3
JP Z,DIS203 ; 等于3,转
CP 2
JP Z,DIS202 ; 等于2,转
CP 1
JP Z,DIS201 ; 等于1,转
LD A,0
LD (DISW),A
RET
DIS206: LD A,(DISW+1)
CP 02H
JP Z,DIS006 ; 等于,转
CP 40H
JP NC,DIS006 ; 不小于,转
CP 04
JP Z,DIS006 ; 等于,转
CP 00 ;***************
JP NZ,DIS261 ; 不等0,转
DIS006: LD A,0
LD (DISW),A
RET
DIS269: LD A,(DISW+3)
CP 0
JP Z,DIS090 ; 等于,转
DIS091: LD C,PL3
CALL DISIO
LD A,(WPL3)
CP 0
JP NZ,DIS092 ; 不等0,转
LD C,PL0
RES 7,C
CALL DISIO
LD A,1
LD (WPL3),A
JP DIS092
DIS090: LD C,PL3
RES 7,C
CALL DISIO
LD A,(WPL3)
CP 1
JP NZ,DIS092 ; 不等0,转
LD A,0
LD (WPL3),A
LD C,PL0
CALL DISIO
DIS092: LD A,0
LD (DISW),A
RET
DIS26A: LD A,(DISW+3)
CP 0
JP Z,DIS0A0 ; 等于,转
DIS0A1: LD C,PL2
CALL DISIO
JP DIS0A2
DIS0A0: LD C,PL2
RES 7,C
CALL DISIO
DIS0A2: LD A,0
LD (DISW),A
RET
DIS261: CP 09
JP Z,DIS269 ; 等于,转
CP 0EH
JP Z,DIS26E ; 等于,转
CP 0AH
JP Z,DIS26A ; 等于,转
CP 0BH
JP NZ,DI2611 ; 不等,转
DIS26E: LD A,0C7H
LD (WADD2),A
LD A,4
LD (DISW),A
JP DIS204
DI2611: CP 0CH
JP Z,DIS262 ; 等于,转
CP 0DH
JP NZ,DIS264 ; 不等,转
DIS262: LD A,80H
LD (WADD2),A
JP DIS263
DIS264: LD A,0C0H
LD (WADD2),A
DIS263: LD A,(DISW+1)
DIS2A: AND 0F0H
SRA A
SRA A
SRA A
SRA A
AND 0FH
LD E,A
DIS2A1: JP DI200
DIS205: LD A,(DISW+1)
CP 6
JP C,DIS2B ; 小于,转
CP 9
JP NC,DIS2B ; 不小于,转
PUSH AF
CALL Q135
POP AF
DIS2B: AND 0FH
LD E,A
JP DI200
DIS204: LD A,(DISW+2)
JP DIS2A
DIS203: LD A,(DISW+2)
JP DIS2B
DIS202: LD A,(DISW+3)
JP DIS2A
DIS201: LD A,(DISW+3)
JP DIS2B
DIS2P: LD A,(DISW+1) ;1992,6,29
CP 0FH
JP NZ,DIS2P1 ; 不等,转
LD A,(DISW+2)
CP 20H
JP NC,DIS2PA ; 不小于,转
CP 1
JP Z,DIS2PA ; 等于,转
CP 6
JP Z,DIS2PA ; 等于,转
CP 09
JP NC,DIS2P1 ; 不小于,转
CP 07
JP C,DIS2P3 ; 小于,转
DIS2PP: PUSH IY
LD IY,DISW
LD A,(IY+2)
LD (IY+1),A
LD A,(IY+3)
LD (IY+2),A
LD A,(IY+4)
LD (IY+3),A
LD A,(IY+5)
LD (IY+4),A
LD A,8
LD (IY),A
POP IY
LD A,6
LD (SDPW1),A
LD A,0C7H
LD (WADD2),A
LD A,(DISW+1)
JP DIS2A
DIS2P1: LD A,0
LD (DISW),A
RET
DIS2P3: PUSH IY
LD IY,DISW
LD D,(IY+4)
LD E,2
DIS2P6: LD A,D
AND 03H
CP 0
JP Z,DIS2P7 ; 等于,转
LD (IY+5),1
JP DIS2P4
DIS2P7: LD (IY+5),0
DIS2P4: LD A,D
AND 0CH
CP 0
JP Z,DIS2P5 ; 等于,转
LD A,10H
OR (IY+5)
LD (IY+5),A
DIS2P5: SRA D
SRA D
SRA D
SRA D
DEC IY
DEC E
JP NZ,DIS2P6 ; 不等0,转
POP IY
JP DIS2PP
DIS2PA: PUSH IY
LD IY,DISW
LD D,(IY+4)
LD E,2
DIS2PE: BIT 0,D
JP NZ,DIS2PB ; 不等0,转
LD (IY+5),0
DIS2PC: BIT 1,D
JP Z,DIS2PD ; 等于,转
LD A,10H
OR (IY+5)
LD (IY+5),A
DIS2PD: SRA D
SRA D
DEC IY
DEC E
JP NZ,DIS2PE ; 不等0,转
POP IY
JP DIS2PP
DIS2PB: LD (IY+5),1
JP DIS2PC
DI200: LD A,(WADD)
LD (WADD1),A
LD A,E
CP 0AH
JP C,DI2001 ; 小于,转
ADD A,37H
JP DI2002
DI2001: ADD A,30H
DI2002: LD E,A
CALL ADS21
CALL DIS2
LD A,(WADD1)
LD (WADD),A
LD C,PL19
CALL DISIO ;***************
LD A,(DISW)
DEC A
LD (DISW),A
RET
COMRM: LD A,(SIORDP)
CP 04
RET C
JP Z,COMR4 ; 等于,转
CP 8
JP Z,COMR8 ; 等于,转
CP 18
JP Z,COMR18 ; 等于,转
CP 19
RET C
LD A,0
LD (SIORDP),A
RET
COMR4: LD A,(W2)
INC A
LD (W2),A
LD A,0
LD (SIORDP),A
LD A,(SIORD+1)
CP 30H
JP C,COMR40 ; 小于,转
CP 40H
JP C,ERRORS ; 小于,转
CP 7FH
JP NC,ERRORS ; 不小于,转
JP COM40
COMR40: LD A,(DISW+1) ;1993,1,15++++
CP 0DH
JP NZ,COMR4A ; 不等,转
LD A,0
LD (DISW),A
LD (DISW+1),A
LD (DISW+2),A
COMR4A: LD HL,TAB4 ;COMR40 1993,1,15^^^^
LD B,0
LD A,(SIORD+1)
CP 0
RET Z
DEC A
COMR41: LD C,A
ADD HL,BC
ADD HL,BC
LD A,(HL)
INC HL
LD H,(HL)
LD L,A
JP (HL)
COMR8: RET
COMR18: RET
PRO32A: CALL KEYLA
CALL DIS20
CALL DIS0
CALL DIS1Q
CALL RQWE ;1992,8,26
LD A,(W1000)
INC A
LD (W1000),A
CP 15
RET C
LD A,0
LD (W1000),A
CALL A0F
RET
SUNB: LD A,90H
OUT (PD1),A
LD A,0BH
OUT (PD1),A
CALL STOP4
LD A,0DH
OUT (PD1),A
LD IX,SUN
LD B,14
CALL TIMER
LD A,1
LD (IX),A
LD B,13
CALL TIMER
LD A,9
LD (IX+1),A
LD B,12
CALL TIMER
LD (IX+2),A
LD B,11
CALL TIMER
LD (IX+3),A
LD B,10
CALL TIMER
AND 01
LD (IX+4),A
LD B,9
CALL TIMER
LD (IX+5),A
LD B,8
CALL TIMER
AND 03
LD (IX+6),A
LD B,7
CALL TIMER
LD (IX+7),A
LD B,6
CALL TIMER
AND 07
LD (IX+8),A
LD A,0
OUT (PC1),A
RET
A0F60: LD IX,WTIMER
LD A,(IX)
CP 0
RET NZ
LD A,(IX+1)
CP 0
RET NZ
LD A,(IX+2)
CP 0
RET NZ
LD A,(IX+3)
CP 5
RET NC
CALL SUNB
RET
A0F: CALL KSENH ;1992,9,2 K CALL SENH
CALL SSENH ;1992,7,1
LD A,(W1)
INC A
LD (W1),A
CP 60
JP C,A0FK ; 小于,转
CALL A0F60
LD A,0
LD (W1),A
A0FK: LD A,(WQ)
CP 5
JP Z,A0F5 ; 等于,转
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -