;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ND80Z3 Z80MODE jan 2015. ; COUNTER UP Ver1.0 ; http://www.geocities.jp/ger531/ND80Z3/index.htm ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG $8000 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LED1=$FFFF ; 00000001 LED2=$FFFE ; 00000010 LED3=$FFFD ; 00000100 LED4=$FFFC ; 00001000 LED5=$FFFB ; 00010000 LED6=$FFFA ; 00100000 LED7=$FFF9 ; 01000000 LED8=$FFF8 ; 10000000 FLG1=$9000 FLG2=$9001 FLG3=$9002 FLG4=$9003 FLG5=$9004 FLG6=$9005 FLG7=$9006 FLG8=$9007 TM5M=$02DD ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CLR: LD HL,$FFF8 LD BC,$0800 CLR2: LD (HL),00 INC HL DJNZ *CLR2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MAIN: LD HL,FLG1 LD (HL),00 LD HL,FLG2 LD (HL),00 LD HL,FLG3 LD (HL),00 LD HL,FLG4 LD (HL),00 LD HL,FLG5 LD (HL),00 LD HL,FLG6 LD (HL),00 LD HL,FLG7 LD (HL),00 LD HL,FLG8 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MAINLOOP: NOP A0: LD HL,FLG1 LD A,(HL) SUB 00 JP NZ,A1 LD HL,LED1 CALL NO0 A1: LD HL,FLG1 LD A,(HL) SUB 01 JP NZ,A2 LD HL,LED1 CALL NO1 A2: LD HL,FLG1 LD A,(HL) SUB 02 JP NZ,A3 LD HL,LED1 CALL NO2 A3: LD HL,FLG1 LD A,(HL) SUB 03 JP NZ,A4 LD HL,LED1 CALL NO3 A4: LD HL,FLG1 LD A,(HL) SUB 04 JP NZ,A5 LD HL,LED1 CALL NO4 A5: LD HL,FLG1 LD A,(HL) SUB 05 JP NZ,A6 LD HL,LED1 CALL NO5 A6: LD HL,FLG1 LD A,(HL) SUB 06 JP NZ,A7 LD HL,LED1 CALL NO6 A7: LD HL,FLG1 LD A,(HL) SUB 07 JP NZ,A8 LD HL,LED1 CALL NO7 A8: LD HL,FLG1 LD A,(HL) SUB 08 JP NZ,A9 LD HL,LED1 CALL NO8 A9: LD HL,FLG1 LD A,(HL) SUB 09 JP NZ,B0 LD HL,LED1 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; B0: LD HL,FLG2 LD A,(HL) SUB 00 JP NZ,B1 LD HL,LED2 CALL NO0 B1: LD HL,FLG2 LD A,(HL) SUB 01 JP NZ,B2 LD HL,LED2 CALL NO1 B2: LD HL,FLG2 LD A,(HL) SUB 02 JP NZ,B3 LD HL,LED2 CALL NO2 B3: LD HL,FLG2 LD A,(HL) SUB 03 JP NZ,B4 LD HL,LED2 CALL NO3 B4: LD HL,FLG2 LD A,(HL) SUB 04 JP NZ,B5 LD HL,LED2 CALL NO4 B5: LD HL,FLG2 LD A,(HL) SUB 05 JP NZ,B6 LD HL,LED2 CALL NO5 B6: LD HL,FLG2 LD A,(HL) SUB 06 JP NZ,B7 LD HL,LED2 CALL NO6 B7: LD HL,FLG2 LD A,(HL) SUB 07 JP NZ,B8 LD HL,LED2 CALL NO7 B8: LD HL,FLG2 LD A,(HL) SUB 08 JP NZ,B9 LD HL,LED2 CALL NO8 B9: LD HL,FLG2 LD A,(HL) SUB 09 JP NZ,C0 LD HL,LED2 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; C0: LD HL,FLG3 LD A,(HL) SUB 00 JP NZ,C1 LD HL,LED3 CALL NO0 C1: LD HL,FLG3 LD A,(HL) SUB 01 JP NZ,C2 LD HL,LED3 CALL NO1 C2: LD HL,FLG3 LD A,(HL) SUB 02 JP NZ,C3 LD HL,LED3 CALL NO2 C3: LD HL,FLG3 LD A,(HL) SUB 03 JP NZ,C4 LD HL,LED3 CALL NO3 C4: LD HL,FLG3 LD A,(HL) SUB 04 JP NZ,C5 LD HL,LED3 CALL NO4 C5: LD HL,FLG3 LD A,(HL) SUB 05 JP NZ,C6 LD HL,LED3 CALL NO5 C6: LD HL,FLG3 LD A,(HL) SUB 06 JP NZ,C7 LD HL,LED3 CALL NO6 C7: LD HL,FLG3 LD A,(HL) SUB 07 JP NZ,C8 LD HL,LED3 CALL NO7 C8: LD HL,FLG3 LD A,(HL) SUB 08 JP NZ,C9 LD HL,LED3 CALL NO8 C9: LD HL,FLG3 LD A,(HL) SUB 09 JP NZ,D0 LD HL,LED3 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D0: LD HL,FLG4 LD A,(HL) SUB 00 JP NZ,D1 LD HL,LED4 CALL NO0 D1: LD HL,FLG4 LD A,(HL) SUB 01 JP NZ,D2 LD HL,LED4 CALL NO1 D2: LD HL,FLG4 LD A,(HL) SUB 02 JP NZ,D3 LD HL,LED4 CALL NO2 D3: LD HL,FLG4 LD A,(HL) SUB 03 JP NZ,D4 LD HL,LED4 CALL NO3 D4: LD HL,FLG4 LD A,(HL) SUB 04 JP NZ,D5 LD HL,LED4 CALL NO4 D5: LD HL,FLG4 LD A,(HL) SUB 05 JP NZ,D6 LD HL,LED4 CALL NO5 D6: LD HL,FLG4 LD A,(HL) SUB 06 JP NZ,D7 LD HL,LED4 CALL NO6 D7: LD HL,FLG4 LD A,(HL) SUB 07 JP NZ,D8 LD HL,LED4 CALL NO7 D8: LD HL,FLG4 LD A,(HL) SUB 08 JP NZ,D9 LD HL,LED4 CALL NO8 D9: LD HL,FLG4 LD A,(HL) SUB 09 JP NZ,E0 LD HL,LED4 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; E0: LD HL,FLG5 LD A,(HL) SUB 00 JP NZ,E1 LD HL,LED5 CALL NO0 E1: LD HL,FLG5 LD A,(HL) SUB 01 JP NZ,E2 LD HL,LED5 CALL NO1 E2: LD HL,FLG5 LD A,(HL) SUB 02 JP NZ,E3 LD HL,LED5 CALL NO2 E3: LD HL,FLG5 LD A,(HL) SUB 03 JP NZ,E4 LD HL,LED5 CALL NO3 E4: LD HL,FLG5 LD A,(HL) SUB 04 JP NZ,E5 LD HL,LED5 CALL NO4 E5: LD HL,FLG5 LD A,(HL) SUB 05 JP NZ,E6 LD HL,LED5 CALL NO5 E6: LD HL,FLG5 LD A,(HL) SUB 06 JP NZ,E7 LD HL,LED5 CALL NO6 E7: LD HL,FLG5 LD A,(HL) SUB 07 JP NZ,E8 LD HL,LED5 CALL NO7 E8: LD HL,FLG5 LD A,(HL) SUB 08 JP NZ,E9 LD HL,LED5 CALL NO8 E9: LD HL,FLG5 LD A,(HL) SUB 09 JP NZ,F0 LD HL,LED5 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; F0: LD HL,FLG6 LD A,(HL) SUB 00 JP NZ,F1 LD HL,LED6 CALL NO0 F1: LD HL,FLG6 LD A,(HL) SUB 01 JP NZ,F2 LD HL,LED6 CALL NO1 F2: LD HL,FLG6 LD A,(HL) SUB 02 JP NZ,F3 LD HL,LED6 CALL NO2 F3: LD HL,FLG6 LD A,(HL) SUB 03 JP NZ,F4 LD HL,LED6 CALL NO3 F4: LD HL,FLG6 LD A,(HL) SUB 04 JP NZ,F5 LD HL,LED6 CALL NO4 F5: LD HL,FLG6 LD A,(HL) SUB 05 JP NZ,F6 LD HL,LED6 CALL NO5 F6: LD HL,FLG6 LD A,(HL) SUB 06 JP NZ,F7 LD HL,LED6 CALL NO6 F7: LD HL,FLG6 LD A,(HL) SUB 07 JP NZ,F8 LD HL,LED6 CALL NO7 F8: LD HL,FLG6 LD A,(HL) SUB 08 JP NZ,F9 LD HL,LED6 CALL NO8 F9: LD HL,FLG6 LD A,(HL) SUB 09 JP NZ,G0 LD HL,LED6 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; G0: LD HL,FLG7 LD A,(HL) SUB 00 JP NZ,G1 LD HL,LED7 CALL NO0 G1: LD HL,FLG7 LD A,(HL) SUB 01 JP NZ,G2 LD HL,LED7 CALL NO1 G2: LD HL,FLG7 LD A,(HL) SUB 02 JP NZ,G3 LD HL,LED7 CALL NO2 G3: LD HL,FLG7 LD A,(HL) SUB 03 JP NZ,G4 LD HL,LED7 CALL NO3 G4: LD HL,FLG7 LD A,(HL) SUB 04 JP NZ,G5 LD HL,LED7 CALL NO5 G5: LD HL,FLG7 LD A,(HL) SUB 05 JP NZ,G6 LD HL,LED7 CALL NO5 G6: LD HL,FLG7 LD A,(HL) SUB 06 JP NZ,G7 LD HL,LED7 CALL NO6 G7: LD HL,FLG7 LD A,(HL) SUB 07 JP NZ,G8 LD HL,LED7 CALL NO7 G8: LD HL,FLG7 LD A,(HL) SUB 08 JP NZ,G9 LD HL,LED7 CALL NO8 G9: LD HL,FLG7 LD A,(HL) SUB 09 JP NZ,H0 LD HL,LED7 CALL NO9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; H0: LD HL,FLG8 LD A,(HL) SUB 00 JP NZ,H1 LD HL,LED8 CALL NO0 H1: LD HL,FLG8 LD A,(HL) SUB 01 JP NZ,H2 LD HL,LED8 CALL NO1 H2: LD HL,FLG8 LD A,(HL) SUB 02 JP NZ,H3 LD HL,LED8 CALL NO2 H3: LD HL,FLG8 LD A,(HL) SUB 03 JP NZ,H4 LD HL,LED8 CALL NO3 H4: LD HL,FLG8 LD A,(HL) SUB 04 JP NZ,H5 LD HL,LED8 CALL NO4 H5: LD HL,FLG8 LD A,(HL) SUB 05 JP NZ,H6 LD HL,LED8 CALL NO5 H6: LD HL,FLG8 LD A,(HL) SUB 06 JP NZ,H7 LD HL,LED8 CALL NO6 H7: LD HL,FLG8 LD A,(HL) SUB 07 JP NZ,H8 LD HL,LED8 CALL NO7 H8: LD HL,FLG8 LD A,(HL) SUB 08 JP NZ,H9 LD HL,LED8 CALL NO8 H9: LD HL,FLG8 LD A,(HL) SUB 09 JP NZ,EX LD HL,LED8 CALL NO9 EX: NOP ;CALL M1S ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG1 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG1 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG2 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG2 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG3 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG3 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG4 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG4 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG5 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG5 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG6 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG6 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG7 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP LD HL,FLG7 LD (HL),00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LD HL,FLG8 INC (HL) LD A,(HL) SUB 0A JP NZ,MAINLOOP END: JP END; 99999999 JP MAINLOOP M1S: CALL TM05 TM05: CALL TM025 TM025: PUSH DE LD E,40;;; TM025_2:PUSH DE CALL TM5M POP DE DEC E JP NZ,TM025_2 POP DE RET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; FONT DATA ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NO0: LD (HL),3F ;0 RET NO1: LD (HL),06 ;1 RET NO2: LD (HL),5B ;2 RET NO3: LD (HL),4F ;3 RET NO4: LD (HL),66 ;4 RET NO5: LD (HL),6D ;5 RET NO6: LD (HL),7D ;6 RET NO7: LD (HL),27 ;7 RET NO8: LD (HL),7F ;8 RET NO9: LD (HL),6F ;9 RET ;END