⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a915.asm

📁 高质量的汇编程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        LD      A,(IX+2)
        LD      (IY),A
        LD      A,(IX+3)
        LD      (IY+1),A
        RET
COM2C:  LD      C,1
        JP      COM2B1
COM2D:  LD      C,2
        JP      COM2B1
COM2E:  LD      C,3
        JP      COM2B1
COM2F:  LD      A,(SIORD+2)
        CP      40H
        JP      C,ERRORS        ; 小于,转
        CP      7FH
        JP      NC,ERRORS       ; 不小于,转
        SUB     40H
        LD      C,A
        LD      B,0
        LD      IY,WDISU
        ADD     IY,BC
        ADD     IY,BC
        LD      A,(SIORD+3)
        CP      0
        JP      Z,ERRORS        ; 等于,转
        CP      9
        JP      NC,ERRORS       ; 不小于,转
        LD      E,A
COM2F1: LD      (IY),0
        LD      (IY+1),0
        INC     IY
        INC     IY
        DEC     E
        JP      NZ,COM2F1       ; 不等,转
        RET
COM40:  LD      A,(SIORD+1)
        SUB     40H
        LD      C,A
        LD      IY,WDISU
        LD      B,0
        ADD     IY,BC
        ADD     IY,BC
        LD      A,(SIORD+2)
        LD      (IY),A
        LD      A,(SIORD+3)
        LD      (IY+1),A
        RET
CL20:   LD      IX,SIOW
        LD      (IX),4
        LD      (IX+1),0FFH
        LD      (IX+2),12H
        LD      (IX+3),00
        LD      (IX+4),00
        CALL    SIOTW
        RET
CLA1:   LD      A,(WADD1)
        LD      (WADD),A
        CALL    ADDS2
        RET
ADDS2:  LD      A,0
        OUT     (PC2),A
        LD      A,(WADD)
        OUT     (PB2),A
        LD      A,10H
        OUT     (PC2),A
        CALL    STOP3
        LD      A,0
        OUT     (PC2),A
        RET
CL21:   LD      A,0
        OUT     (PC2),A
        NOP
        LD      A,(WADD)
        OUT     (PB2),A
        NOP
        LD      A,10H
        OUT     (PC2),A
        CALL    STOP3
        LD      A,0
        OUT     (PC2),A
        LD      A,20H
        CALL    DIS11
        LD      A,(WADD)
        CP      80H
        JP      Z,CLB1          ; 等于,转
        DEC     A
        LD      (WADD),A
        JP      CL21
CLB1:   LD      A,0
        OUT     (PC2),A
        LD      A,80H
        OUT     (PB2),A
        LD      A,10H
        OUT     (PC2),A
        CALL    STOP3
        LD      A,0
        OUT     (PC2),A
        RET
CL3:    LD      A,(HIN1)
        CP      1
        JP      Z,CL31          ; 等于,转
        CP      0
        JP      NZ,ERROR        ; 不等,转
        LD      C,PL16
        CALL    DISIO
        LD      A,1
        LD      (HIN1),A
        LD      E,A
CL30:   LD      IY,SIOW
        LD      (IY+4),E
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),0BH
        LD      (IY+3),0
        JP      CL172
CL31:   LD      A,0
        LD      (HIN1),A
        LD      C,PL16
        RES     7,C
        CALL    DISIO
        LD      E,0
        JP      CL30
CL5:    LD      IX,KAB1
        LD      A,(IX+16)
        CP      4
        JP      NZ,ERROR        ; 不等,转
        LD      A,(IX)
        CP      3
        JP      NC,ERROR        ; 不小于,转
        LD      A,(IX)
        CP      2
        JP      NZ,CL51         ; 不等,转
        LD      A,(IX+1)
        CP      5
        JP      NC,ERROR        ; 不小于,转
CL51:   LD      A,(IX+2)
        CP      7
        JP      NC,ERROR        ; 不小于,转
        LD      A,(IX+4)
        CP      7
        JP      NC,ERROR        ; 不小于,转
        LD      A,80H
        OUT     (PD1),A
        NOP
        NOP
        LD      A,0BH
        OUT     (PD1),A
        CALL    STOP4
        LD      B,2
        LD      C,(IX+3)
        CALL    CLTIME
        LD      B,3
        LD      C,(IX+2)
        CALL    CLTIME
        LD      B,4
        LD      C,(IX+1)
        CALL    CLTIME
        LD      B,5
        LD      C,(IX)
        LD      A,C
        OR      08H
        LD      C,A
        CALL    CLTIME
        LD      A,0
        OUT     (PC1),A
CL5Q:   LD      A,0
        LD      (KAB1+16),A
        LD      A,(IX)
        LD      (KAB2),A
        LD      A,(IX+1)
        LD      (KAB2+1),A
        LD      A,(IX+2)
        LD      (KAB2+3),A
        LD      A,(IX+3)
        LD      (KAB2+4),A
        LD      A,10
        LD      (KAB2+2),A
        LD      A,5
        LD      (KAB2+5),A
        CALL    CL21
        LD      A,90H                   ;1992,8,19
        OUT     (PD1),A                 ;1992,8,19
        RET
CLTIME: LD      A,C
        OUT     (PA1),A
        NOP
        NOP
        LD      A,B
        OUT     (PB1),A
        NOP
        NOP
        LD      A,0FH
        OUT     (PD1),A
        CALL    STOP1
        NOP
        NOP
        LD      A,0EH
        OUT     (PD1),A
        RET
CL6:    LD      A,(KAB1+16)
        CP      0
        JP      NZ,CL60         ; 不等,转
        LD      A,10
        LD      (KAB3+11),A
        RET
CL6Q:   CALL    WSUN
        LD      A,0
        LD      (KAB1+16),A
        CALL    CL21
        RET
CL60:   LD      IX,KAB1
        LD      A,(IX)
        CP      3
        JP      NC,ERROR        ; 不小于,转
        LD      A,(IX+4)
        CP      2
        JP      NC,ERROR        ; 不小于,转
        LD      A,(IX+6)
        CP      4
        JP      NC,ERROR        ; 不小于,转
        CALL    WSUN1
        LD      A,80H
        OUT     (PD1),A
        LD      A,0BH
        OUT     (PD1),A
        CALL    STOP4
        LD      B,14
CL61:   LD      C,(IX)
        CALL    CLTIME
        INC     IX
        DEC     B
        LD      A,B
        CP      6
        JP      NZ,CL61         ; 不等,转
        LD      A,0
        OUT     (PC1),A
        LD      (KAB1+16),A
        CALL    CL21
        LD      A,90H           ;1992,8,19
        OUT     (PD1),A         ;1992,8,19
        RET
WSUN:   LD      IX,KAB1
        LD      A,(IX+4)
        CP      2
        JP      NC,ERROR        ; 不小于,转
WSUN1:  LD      IX,KAB1
        LD      IY,KAB3
        LD      A,(IX)
        LD      (IY),A
        LD      A,(IX+1)
        LD      (IY+1),A
        LD      A,(IX+2)
        LD      (IY+2),A
        LD      A,(IX+3)
        LD      (IY+3),A
        LD      A,(IX+4)
        LD      (IY+4),2FH
        LD      (IY+5),A
        LD      A,(IX+5)
        LD      (IY+6),A
        LD      A,(IX+6)
        LD      (IY+7),2FH
        LD      (IY+8),A
        LD      A,(IX+7)
        LD      (IY+9),A
        LD      (IY+10),2FH
        LD      (IY+11),10
        LD      A,0
        LD      (KAB1+16),A
        CALL    CL21
        RET
CL7:    LD      IX,KAB1
        LD      A,(IX)
        CP      6
        JP      Z,CL75          ; 等于,转
        JP      NC,ERROR        ; 不小于,转
        LD      A,(IX+16)
        CP      1
        JP      NZ,ERROR        ; 不等,转
        LD      A,(IX)
        CP      0
        JP      Z,CL70          ; 等于0,转
        CP      1
        JP      Z,CL71          ; 等于1,转
        CP      2
        JP      Z,CL72          ; 等于2,转
        CP      3
        JP      Z,CL73          ; 等于3,转
        CP      4
        JP      Z,CL74          ; 等于4,转
        JP      ERROR
CL70:   LD      E,0
CL701:  LD      IY,SIOW
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),8
        LD      (IY+3),0
        LD      (IY+4),E
CL702:  CALL    CL182
        LD      A,3
        LD      (STABS),A
        CALL    CL21
        LD      A,0
        LD      (IX+16),A
        LD      C,PL0
        CALL    DISIO
        RET
CL71:   LD      E,01
        JP      CL701
CL72:   LD      E,2
        JP      CL701
CL73:   LD      E,3
        JP      CL701
CL74:   LD      E,4
        JP      CL701
CL75:   LD      A,(IX+16)
        CP      3
        JP      NZ,ERROR        ; 不等,转
        LD      IY,SIOW
        LD      A,(IX+1)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+2)
        CP      49H
        JP      NC,ERROR        ; 不小于,转
        LD      (IY+4),A
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),8
        LD      (IY+3),02
        JP      CL702
CL4:    LD      E,04
CL41:   LD      IX,KAB1
        LD      A,(IX+16)
        CP      4
        JP      NZ,ERROR        ; 不等,转
        LD      A,(IX)
        CP      2
        JP      Z,CL42          ; 等于,转
        CP      0
        JP      NZ,ERROR        ; 不等,转
        LD      A,(IX+1)
        CP      3
        JP      Z,CL03          ; 等于,转
        CP      4
        JP      Z,CL04          ; 等于,转
        CP      5
        JP      Z,CL05          ; 等于,转
ERRORS: RET
ERROR:  CALL    ALMWK
        LD      A,0
        LD      (KAB1+16),A
        LD      A,80H
        LD      (WADD),A
        LD      A,0FFH
        LD      (WNEXT),A
        RET
CL03:   LD      A,(IX+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+3)
        CP      49H
        JP      NC,ERROR        ; 不小于,转
        JP      CL42
CL04:   LD      A,(IX+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+3)
        CP      65H
        JP      NC,ERROR        ; 不小于,转
        JP      CL42
CL05:   LD      A,(IX+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+3)
        CP      49H
        JP      NC,ERROR        ; 不小于,转
CL42:   LD      IY,SIOW
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),E
        LD      A,(IX)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+1)
        LD      (IY+3),A
        LD      A,(IX+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+3)
        LD      (IY+4),A
        CALL    SIOTW
        CALL    CL21
        LD      A,0
        LD      (KAB1+16),A
        RET
CL8:    LD      C,PL0
        CALL    DISIO
        LD      E,01                    ;1992,8,31,=3
        JP      CL41
CL9:    LD      E,07
CL91:   LD      IX,KAB1
        LD      A,(IX+16)
        CP      4
        JP      NZ,ERROR        ; 不等,转
        LD      A,(IX)
        CP      2
        JP      NZ,ERROR        ; 不等,转
        LD      IY,SIOW
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),E
        LD      A,(IX)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+1)
        LD      (IY+3),A
        LD      A,(IX+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IX+3)
        LD      (IY+4),A
        CALL    CL182
        CALL    CL21
        LD      A,0
        LD      (KAB1+16),A
        LD      C,PL0
        CALL    DISIO
        RET
CL10:   LD      A,1
        LD      (WDIS00),A
        LD      A,0
        LD      (WDIS0),A
        CALL    DIS0    
        RET
CL11:   LD      A,0
        LD      (STABS),A
        CALL    CL21
        LD      A,0
        LD      (KAB1+16),A
        LD      IY,SIOW
        LD      (IY),4
        LD      (IY+1),0FFH
        LD      (IY+2),10H
        LD      (IY+3),0
        LD      (IY+4),0
        CALL    SIOTW
        RET
TAB12:  DW      SH0,SH1,SH2,SH3,SH4,SH5,SH6,SH7,SH8
        DW      SH9,SH10,SH11,SH12,SH13,SH14,SH15,SH16
SH0:    RET
SH1:    LD      A,(IY+2)
        CP      2
        JP      NZ,ERROR        ; 不等,转
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IY+3)
        LD      (IX+3),A
        LD      A,(IY+4)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IY+5)
        LD      (IX+4),A
        LD      (IX),4
        LD      (IX+1),0FFH
        LD      (IX+2),80H
        CALL    SIOTW
        CALL    CL21
        LD      A,0
        LD      (KAB1+16),A
        RET
SH2:    LD      A,(IY+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IY+3)
        CP      49H
        JP      NC,ERROR        ; 不小于,转
        LD      (IX+4),A
        LD      (IX),4
        LD      (IX+1),0FFH
        LD      (IX+2),80H
        LD      (IX+3),01
        CALL    SIOTW
        CALL    CL21
        LD      A,0
        LD      (KAB1+16),A
        RET
SH3:    LD      A,(IY+2)
        SLA     A
        SLA     A
        SLA     A
        SLA     A
        OR      (IY+3)
        CP      65H
        JP      NC,ERROR        ; 不小于,转
        LD      (IX+4),

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -