00010 ;Z80 ALIGN/SRC IS FOR KAYRPO II (ALIGN.COM) 00020 ;KAYPRO ALIGNMENT PROGRAM 00030 ;THIS PROGRAM WILL HELP YOU ALIGN THE MONITOR ON THE 00040 ;KAYPRO II COMPUTER. USE THIS PROGRAM FOR SETTING 00050 ;THE VIDEO DISPLAY IN THE VERY CENTER OF THE SCREEN. 00060 ;WRITTEN BY LARRY KRAEMER 10/19/83 00070 ;WRITTEN AND ASSEMBLED ON RADIO SHACK MODEL 1. 00080 INIT1 EQU 5098H 00090 DEST EQU 5000H 00100 MORE EQU 5019H 00110 AGAIN EQU 501EH 00120 DELAY EQU 5084H 00130 DELAY0 EQU 5087H 00140 DELAY1 EQU 508AH 00150 AON EQU 5068H 00160 AOFF EQU 506FH 00170 BON EQU 5076H 00180 BOFF EQU 507DH 00190 MESAG EQU 5147H 00200 MESAG1 EQU 5157H 00210 MESAG2 EQU 518DH 00220 MESAG3 EQU 51C4H 00230 MESAG4 EQU 51F9H 00240 MESAG5 EQU 5232H 00250 MESAG6 EQU 5264H 00260 MESAG7 EQU 5272H 00270 MESAG8 EQU 527EH 00280 MES1 EQU 5121H 00290 MES2 EQU 5134H 00300 ZIP EQU 5291H 00310 ORG 0100H ;ORGIN IS 0100H 00320 START LD HL,RAM ;POINT TO SOURCE 00330 LD DE,DEST ;POINT TO DESTINATION 00340 LD BC,ERAM1-RAM ;NUMBER OF BYTES 00350 LDIR ;BLOCK MOVE IT HIGH 00360 JP INIT1 ;JUMP HIGH AND INIT 00370 RAM IN A,(01CH) ;READ SYSTEM STATUS PORT 00380 SET 7,A ;TURN ON VIDEO PAGE 00390 SET 6,A ;TURN OFF DRIVES 00400 RES 0,A ;TURN OFF DRIVE LIGHT A 00410 RES 1,A ;TURN OFF DRIVE LIGHT B 00420 OUT (01CH),A ;SEND TO PORT 1CH 00430 LD HL,3000H ;START OF VIDEO PAGE 00440 LD DE,3001H ;NEXT ADDR 00450 LD BC,0BFFH ;TOTAL VIDEO PAGE 00460 LD (HL),20H ;CLEAR SCREEN 00470 LDIR ;BLOCK MOVE 00480 MOR LD HL,4FFFH 00490 LD (HL),40H 00500 AGN LD A,(HL) 00510 LD HL,3000H 00520 LD DE,3001H 00530 LD BC,0BFFH 00540 LD (HL),A 00550 LDIR 00560 LD HL,MES1 00570 LD DE,35A0H 00580 LD BC,13H 00590 LDIR 00600 LD HL,MES2 00610 LD DE,3620H 00620 LD BC,13H 00630 LDIR 00640 CALL DELAY 00650 CALL AON 00660 CALL DELAY 00670 CALL AOFF 00680 CALL DELAY 00690 CALL BON 00700 CALL DELAY 00710 CALL BOFF 00720 LD HL,4FFFH 00730 XOR A 00740 LD A,(HL) 00750 INC A 00760 LD (HL),A 00770 CP 80H 00780 JP NZ,AGAIN 00790 JP MORE 00800 DAON IN A,(1CH) ;GET STATUS BYTE 00810 SET 0,A ;TURN ON LED 00820 OUT (1CH),A ;OUT TO PORT 00830 RET 00840 DAOFF IN A,(1CH) ;GET STATUS BYTE 00850 RES 0,A ;TURN OFF LED 00860 OUT (1CH),A ;OUT TO PORT 00870 RET 00880 DBON IN A,(1CH) ;GET STATUS BYTE 00890 SET 1,A ;TURN ON LED 00900 OUT (1CH),A ;OUT TO PORT 00910 RET 00920 DBOFF IN A,(1CH) ;GET STATUS BYTE 00930 RES 1,A ;TURN OFF LED 00940 OUT (1CH),A ;OUT TO PORT 00950 RET 00960 DELY LD BC,0002H ;TWO TIMES THRU 00970 DELY0 LD HL,00H ;TIMES FF 00980 DELY1 DEC HL ;SUBTRACT ONE 00990 LD A,H ;CHECK FOR ZERO 01000 OR L ;LOOP AGAIN IF NOT 0 01010 JP NZ,DELAY1 ;JUMP HERE 01020 DEC BC ;DEC BC BY ONE 01030 LD A,B ;CHECK FOR ZERO 01040 OR C ;HERE TO 01050 JP NZ,DELAY0 01060 RET 01070 DEFB 00H ;END MARKER 01080 INT IN A,(1CH) 01090 SET 7,A 01100 SET 6,A 01110 RES 0,A 01120 RES 1,A 01130 OUT (1CH),A 01140 LD HL,3000H 01150 LD DE,3001H 01160 LD BC,0BFFH 01170 LD (HL),20H 01180 LDIR 01190 LD HL,MESAG 01200 LD DE,3420H 01210 LD BC,MESAG1-MESAG 01220 LDIR 01230 LD HL,MESAG1 01240 LD DE,3510H 01250 LD BC,MESAG2-MESAG1 01260 LDIR 01270 LD HL,MESAG2 01280 LD DE,3590H 01290 LD BC,MESAG3-MESAG2 01300 LDIR 01310 LD HL,MESAG3 01320 LD DE,3610H 01330 LD BC,MESAG4-MESAG3 01340 LDIR 01350 LD HL,MESAG4 01360 LD DE,3690H 01370 LD BC,MESAG5-MESAG4 01380 LDIR 01390 LD HL,MESAG5 01400 LD DE,3710H 01410 LD BC,MESAG6-MESAG5 01420 LDIR 01430 LD HL,MESAG6 01440 LD DE,3820H 01450 LD BC,MESAG7-MESAG6 01460 LDIR 01470 LD HL,MESAG7 01480 LD DE,38A0H 01490 LD BC,MESAG8-MESAG7 01500 LDIR 01510 LD HL,MESAG8 01520 LD DE,3920H 01530 LD BC,ZIP-MESAG8 01540 LDIR 01550 NOP 01560 LD BC,15H 01570 CALL DELAY0 01580 CALL DELAY 01590 JP DEST 01600 ME1 DEFB 20H 01610 DEFB 20H 01620 DEFB 20H 01630 DEFB 4BH 01640 DEFB 41H 01650 DEFB 59H 01660 DEFB 50H 01670 DEFB 52H 01680 DEFB 4FH 01690 DEFB 20H 01700 DEFB 49H 01710 DEFB 49H 01720 DEFB 20H 01730 DEFB 43H 01740 DEFB 52H 01750 DEFB 54H 01760 DEFB 20H 01770 DEFB 20H 01780 DEFB 20H 01790 ME2 DEFB 20H 01800 DEFB 20H 01810 DEFB 20H 01820 DEFB 20H 01830 DEFB 20H 01840 DEFB 41H 01850 DEFB 4CH 01860 DEFB 49H 01870 DEFB 47H 01880 DEFB 4EH 01890 DEFB 4DH 01900 DEFB 45H 01910 DEFB 4EH 01920 DEFB 54H 01930 DEFB 20H 01940 DEFB 20H 01950 DEFB 20H 01960 DEFB 20H 01970 DEFB 20H 01980 MEG0 DEFB 47H 01990 DEFB 52H 02000 DEFB 45H 02010 DEFB 45H 02020 DEFB 54H 02030 DEFB 49H 02040 DEFB 4EH 02050 DEFB 47H 02060 DEFB 53H 02070 DEFB 20H 02080 DEFB 20H 02090 DEFB 21H 02100 DEFB 20H 02110 DEFB 21H 02120 DEFB 20H 02130 DEFB 21H 02140 MEG1 DEFB 54H 02150 DEFB 68H 02160 DEFB 69H 02170 DEFB 73H 02180 DEFB 20H 02190 DEFB 44H 02200 DEFB 69H 02210 DEFB 61H 02220 DEFB 67H 02230 DEFB 6EH 02240 DEFB 6FH 02250 DEFB 73H 02260 DEFB 74H 02270 DEFB 69H 02280 DEFB 63H 02290 DEFB 20H 02300 DEFB 50H 02310 DEFB 72H 02320 DEFB 6FH 02330 DEFB 67H 02340 DEFB 72H 02350 DEFB 61H 02360 DEFB 6DH 02370 DEFB 20H 02380 DEFB 49H 02390 DEFB 73H 02400 DEFB 20H 02410 DEFB 46H 02420 DEFB 75H 02430 DEFB 72H 02440 DEFB 6EH 02450 DEFB 69H 02460 DEFB 73H 02470 DEFB 68H 02480 DEFB 65H 02490 DEFB 64H 02500 DEFB 20H 02510 DEFB 42H 02520 DEFB 79H 02530 DEFB 20H 02540 DEFB 4CH 02550 DEFB 61H 02560 DEFB 72H 02570 DEFB 72H 02580 DEFB 79H 02590 DEFB 20H 02600 DEFB 4BH 02610 DEFB 72H 02620 DEFB 61H 02630 DEFB 65H 02640 DEFB 6DH 02650 DEFB 65H 02660 DEFB 72H 02670 DEFB 20H 02680 MEG2 DEFB 46H 02690 DEFB 6FH 02700 DEFB 72H 02710 DEFB 20H 02720 DEFB 41H 02730 DEFB 6CH 02740 DEFB 6CH 02750 DEFB 20H 02760 DEFB 4BH 02770 DEFB 61H 02780 DEFB 79H 02790 DEFB 70H 02800 DEFB 72H 02810 DEFB 6FH 02820 DEFB 20H 02830 DEFB 49H 02840 DEFB 49H 02850 DEFB 20H 02860 DEFB 4FH 02870 DEFB 77H 02880 DEFB 6EH 02890 DEFB 65H 02900 DEFB 72H 02910 DEFB 73H 02920 DEFB 2EH 02930 DEFB 20H 02940 DEFB 20H 02950 DEFB 50H 02960 DEFB 6CH 02970 DEFB 65H 02980 DEFB 61H 02990 DEFB 73H 03000 DEFB 65H 03010 DEFB 20H 03020 DEFB 46H 03030 DEFB 65H 03040 DEFB 65H 03050 DEFB 6CH 03060 DEFB 20H 03070 DEFB 46H 03080 DEFB 72H 03090 DEFB 65H 03100 DEFB 65H 03110 DEFB 20H 03120 DEFB 54H 03130 DEFB 6FH 03140 DEFB 20H 03150 DEFB 47H 03160 DEFB 69H 03170 DEFB 76H 03180 DEFB 65H 03190 DEFB 20H 03200 DEFB 49H 03210 DEFB 74H 03220 DEFB 20H 03230 MEG3 DEFB 54H 03240 DEFB 6FH 03250 DEFB 20H 03260 DEFB 41H 03270 DEFB 6EH 03280 DEFB 79H 03290 DEFB 6FH 03300 DEFB 6EH 03310 DEFB 65H 03320 DEFB 20H 03330 DEFB 57H 03340 DEFB 68H 03350 DEFB 6FH 03360 DEFB 20H 03370 DEFB 4EH 03380 DEFB 65H 03390 DEFB 65H 03400 DEFB 64H 03410 DEFB 73H 03420 DEFB 20H 03430 DEFB 49H 03440 DEFB 74H 03450 DEFB 2EH 03460 DEFB 20H 03470 DEFB 20H 03480 DEFB 49H 03490 DEFB 66H 03500 DEFB 20H 03510 DEFB 59H 03520 DEFB 6FH 03530 DEFB 75H 03540 DEFB 20H 03550 DEFB 57H 03560 DEFB 6FH 03570 DEFB 75H 03580 DEFB 6CH 03590 DEFB 64H 03600 DEFB 20H 03610 DEFB 4CH 03620 DEFB 69H 03630 DEFB 6BH 03640 DEFB 65H 03650 DEFB 20H 03660 DEFB 54H 03670 DEFB 6FH 03680 DEFB 20H 03690 DEFB 42H 03700 DEFB 65H 03710 DEFB 63H 03720 DEFB 6FH 03730 DEFB 6DH 03740 DEFB 65H 03750 DEFB 20H 03760 MEG4 DEFB 41H 03770 DEFB 20H 03780 DEFB 52H 03790 DEFB 65H 03800 DEFB 67H 03810 DEFB 69H 03820 DEFB 73H 03830 DEFB 74H 03840 DEFB 65H 03850 DEFB 72H 03860 DEFB 65H 03870 DEFB 64H 03880 DEFB 20H 03890 DEFB 4FH 03900 DEFB 77H 03910 DEFB 6EH 03920 DEFB 65H 03930 DEFB 72H 03940 DEFB 20H 03950 DEFB 41H 03960 DEFB 6EH 03970 DEFB 64H 03980 DEFB 20H 03990 DEFB 52H 04000 DEFB 65H 04010 DEFB 63H 04020 DEFB 65H 04030 DEFB 69H 04040 DEFB 76H 04050 DEFB 65H 04060 DEFB 20H 04070 DEFB 41H 04080 DEFB 6EH 04090 DEFB 79H 04100 DEFB 20H 04110 DEFB 44H 04120 DEFB 6FH 04130 DEFB 63H 04140 DEFB 75H 04150 DEFB 6DH 04160 DEFB 65H 04170 DEFB 6EH 04180 DEFB 74H 04190 DEFB 61H 04200 DEFB 74H 04210 DEFB 69H 04220 DEFB 6FH 04230 DEFB 6EH 04240 DEFB 2FH 04250 DEFB 55H 04260 DEFB 70H 04270 DEFB 64H 04280 DEFB 61H 04290 DEFB 74H 04300 DEFB 65H 04310 DEFB 73H 04320 DEFB 20H 04330 MEG5 DEFB 54H 04340 DEFB 6FH 04350 DEFB 20H 04360 DEFB 54H 04370 DEFB 68H 04380 DEFB 65H 04390 DEFB 20H 04400 DEFB 50H 04410 DEFB 72H 04420 DEFB 6FH 04430 DEFB 67H 04440 DEFB 72H 04450 DEFB 61H 04460 DEFB 6DH 04470 DEFB 20H 04480 DEFB 53H 04490 DEFB 65H 04500 DEFB 6EH 04510 DEFB 64H 04520 DEFB 20H 04530 DEFB 20H 04540 DEFB 24H 04550 DEFB 31H 04560 DEFB 30H 04570 DEFB 2EH 04580 DEFB 30H 04590 DEFB 30H 04600 DEFB 20H 04610 DEFB 41H 04620 DEFB 6CH 04630 DEFB 6FH 04640 DEFB 6EH 04650 DEFB 67H 04660 DEFB 20H 04670 DEFB 57H 04680 DEFB 69H 04690 DEFB 74H 04700 DEFB 68H 04710 DEFB 20H 04720 DEFB 41H 04730 DEFB 20H 04740 DEFB 44H 04750 DEFB 69H 04760 DEFB 73H 04770 DEFB 6BH 04780 DEFB 20H 04790 DEFB 54H 04800 DEFB 6FH 04810 DEFB 3AH 04820 DEFB 20H 04830 MEG6 DEFB 4CH 04840 DEFB 61H 04850 DEFB 72H 04860 DEFB 72H 04870 DEFB 79H 04880 DEFB 20H 04890 DEFB 4BH 04900 DEFB 72H 04910 DEFB 61H 04920 DEFB 65H 04930 DEFB 6DH 04940 DEFB 65H 04950 DEFB 72H 04960 DEFB 20H 04970 MEG7 DEFB 52H 04980 DEFB 23H 04990 DEFB 32H 05000 DEFB 20H 05010 DEFB 42H 05020 DEFB 6FH 05030 DEFB 78H 05040 DEFB 20H 05050 DEFB 31H 05060 DEFB 39H 05070 DEFB 30H 05080 DEFB 20H 05090 MEG8 DEFB 4AH 05100 DEFB 61H 05110 DEFB 63H 05120 DEFB 6BH 05130 DEFB 73H 05140 DEFB 6FH 05150 DEFB 6EH 05160 DEFB 2CH 05170 DEFB 20H 05180 DEFB 4DH 05190 DEFB 4FH 05200 DEFB 2EH 05210 DEFB 20H 05220 DEFB 36H 05230 DEFB 33H 05240 DEFB 37H 05250 DEFB 35H 05260 DEFB 35H 05270 DEFB 20H 05280 ZIPP DEFB 20H 05290 ERAM1 DEFB 20H 05300 END START