CLOCK-CAL.BUD
FILE INFORMATION
FILENAME(S): CLOCK-CAL.BUD
FILE TYPE(S): SEQ
FILE SIZE: 14.2K
FIRST SEEN: 2025-11-30 21:15:11
APPEARS ON: 1 disk(s)
FILE HASH
76695eda0e7fb7d380a333e595db1d9bdca5777c526be2cf6e9c20b19a6eb2ad
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| TRANSACTOR DISK | CLOCK-CAL.BUD | SEQ | DuncanTwain | 7 | 1 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 3B 50 55 54 22 40 30 3A 43 4C 4F 43 4B 2D 43 41 |;PUT"@0:CLOCK-CA| 00000010: 4C 2E 42 55 44 0D 3B 20 2A 2A 20 52 45 57 52 49 |L.BUD.; ** REWRI| 00000020: 54 54 45 4E 20 49 4E 20 C2 55 44 44 59 20 31 32 |TTEN IN .UDDY 12| 00000030: 38 20 C6 4F 52 4D 41 54 0D 3B 20 0D 2A 3D 24 31 |8 .ORMAT.; .*=$1| 00000040: 33 30 30 20 3B 20 34 38 36 34 0D 2E 4F 42 4A 20 |300 ; 4864..OBJ | 00000050: 22 40 30 3A 43 4C 4B 34 38 36 34 22 0D 3B 0D 3B |"@0:CLK4864".;.;| 00000060: 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 |* * * * * * * * | 00000070: 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 |* * * * * * * * | 00000080: 2A 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 20 20 |*.;* | 00000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000000A0: 20 20 20 2A 0D 3B 2A 20 43 4C 4F 43 4B 20 26 20 | *.;* CLOCK & | 000000B0: 43 41 4C 45 4E 44 41 52 20 44 49 53 50 4C 41 59 |CALENDAR DISPLAY| 000000C0: 2E 2E 2E 20 20 20 2A 0D 3B 2A 20 57 49 54 48 20 |... *.;* WITH | 000000D0: 41 55 44 49 42 4C 45 20 41 4C 41 52 4D 20 46 55 |AUDIBLE ALARM FU| 000000E0: 4E 43 54 49 4F 4E 20 20 20 2A 0D 3B 2A 20 20 20 |NCTION *.;* | 000000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000100: 20 20 20 20 20 20 20 20 20 20 20 20 2A 0D 3B 2A | *.;*| 00000110: 20 43 2D 31 32 38 20 4D 4F 44 45 2C 20 34 30 20 | C-128 MODE, 40 | 00000120: 4F 52 20 38 30 20 43 4F 4C 55 4D 4E 53 20 20 2A |OR 80 COLUMNS *| 00000130: 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 20 20 20 |.;* | 00000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000150: 20 20 2A 0D 3B 2A 20 57 52 49 54 54 45 4E 20 31 | *.;* WRITTEN 1| 00000160: 31 2D 31 36 2D 38 35 20 20 57 2E 4A 2E 20 42 52 |1-16-85 W.J. BR| 00000170: 49 45 52 20 20 2A 0D 3B 2A 20 20 20 20 20 20 20 |IER *.;* | 00000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000190: 20 20 20 20 20 20 20 20 2A 0D 3B 2A 20 52 45 56 | *.;* REV| 000001A0: 49 53 45 44 20 20 36 2D 30 35 2D 38 37 20 20 20 |ISED 6-05-87 | 000001B0: 20 20 20 20 20 20 20 20 20 20 20 2A 0D 3B 2A 20 | *.;* | 000001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2A 0D | *.| 000001E0: 3B 2A 20 43 4F 50 59 52 49 47 48 54 20 31 39 38 |;* COPYRIGHT 198| 000001F0: 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |6 | 00000200: 20 2A 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 20 | *.;* | 00000210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000220: 20 20 20 20 2A 0D 3B 2A 20 54 48 49 53 20 50 52 | *.;* THIS PR| 00000230: 4F 47 52 41 4D 20 49 53 20 4E 4F 54 20 54 4F 20 |OGRAM IS NOT TO | 00000240: 42 45 2E 2E 2E 20 20 2A 0D 3B 2A 20 53 4F 4C 44 |BE... *.;* SOLD| 00000250: 2E 20 20 49 54 20 49 53 20 50 45 52 4D 49 53 53 |. IT IS PERMISS| 00000260: 49 42 4C 45 2E 2E 2E 20 20 20 2A 0D 3B 2A 20 54 |IBLE... *.;* T| 00000270: 4F 20 43 4F 50 59 20 49 54 20 42 55 54 20 43 52 |O COPY IT BUT CR| 00000280: 45 44 49 54 20 4D 55 53 54 2E 2E 2E 20 2A 0D 3B |EDIT MUST... *.;| 00000290: 2A 20 42 45 20 47 49 56 45 4E 20 49 4E 20 54 48 |* BE GIVEN IN TH| 000002A0: 45 20 44 4F 43 55 4D 45 4E 54 41 54 49 4F 4E 20 |E DOCUMENTATION | 000002B0: 2A 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 20 20 |*.;* | 000002C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000002D0: 20 20 20 2A 0D 3B 2A 20 53 45 45 20 54 48 45 20 | *.;* SEE THE | 000002E0: 44 4F 43 55 4D 45 4E 54 41 54 49 4F 4E 20 46 4F |DOCUMENTATION FO| 000002F0: 52 2E 2E 2E 20 20 2A 0D 3B 2A 20 49 4E 53 54 52 |R... *.;* INSTR| 00000300: 55 43 54 49 4F 4E 53 20 4F 4E 20 55 53 49 4E 47 |UCTIONS ON USING| 00000310: 20 54 48 49 53 2E 2E 2E 20 2A 0D 3B 2A 20 50 52 | THIS... *.;* PR| 00000320: 4F 47 52 41 4D 20 57 49 54 48 20 59 4F 55 52 20 |OGRAM WITH YOUR | 00000330: 53 4F 46 54 57 41 52 45 2E 2E 2E 20 2A 0D 3B 2A |SOFTWARE... *.;*| 00000340: 20 41 53 20 57 45 4C 4C 20 41 53 20 44 49 53 54 | AS WELL AS DIST| 00000350: 52 49 42 55 54 49 4F 4E 2E 2E 2E 20 20 20 20 2A |RIBUTION... *| 00000360: 0D 3B 2A 20 4C 49 4D 49 54 41 54 49 4F 4E 53 2E |.;* LIMITATIONS.| 00000370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000380: 20 20 2A 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 | *.;* | 00000390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000003A0: 20 20 20 20 20 2A 0D 3B 2A 20 2A 20 2A 20 2A 20 | *.;* * * * | 000003B0: 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 |* * * * * * * * | 000003C0: 2A 20 2A 20 2A 20 2A 20 2A 0D 20 20 20 20 20 20 |* * * * *. | 000003D0: 20 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 | ;. | 000003E0: 20 20 20 20 20 20 20 20 3B 0D 3B 2A 20 2A 20 2A | ;.;* * *| 000003F0: 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A | * * * * * * * *| 00000400: 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 0D 3B 2A 20 | * * * * * *.;* | 00000410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000420: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2A 0D | *.| 00000430: 3B 2A 20 20 3C 3C 3C 20 50 52 4F 47 52 41 4D 20 |;* <<< PROGRAM | 00000440: 41 53 53 49 47 4E 4D 45 4E 54 53 20 3E 3E 3E 20 |ASSIGNMENTS >>> | 00000450: 20 2A 0D 3B 2A 20 20 20 20 20 20 20 20 20 20 20 | *.;* | 00000460: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000470: 20 20 20 20 2A 0D 3B 2A 20 2A 20 2A 20 2A 20 2A | *.;* * * * *| 00000480: 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A 20 2A | * * * * * * * *| 00000490: 20 2A 20 2A 20 2A 20 2A 0D 20 20 20 20 20 20 20 | * * * *. | 000004A0: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 000004B0: 20 20 20 20 20 20 20 3B 0D 3B 53 59 53 54 45 4D | ;.;SYSTEM| 000004C0: 20 56 45 43 54 4F 52 53 20 26 20 50 4F 49 4E 54 | VECTORS & POINT| 000004D0: 45 52 53 2E 2E 2E 0D 20 20 20 20 20 20 20 20 20 |ERS.... | 000004E0: 20 20 20 20 20 3B 0D 44 46 4C 54 4F 20 20 3D 24 | ;.DFLTO =$| 000004F0: 39 41 20 20 20 3B 4F 55 54 50 55 54 20 44 45 56 |9A ;OUTPUT DEV| 00000500: 49 43 45 0D 20 20 20 20 20 20 20 20 20 20 20 20 |ICE. | 00000510: 20 20 3B 0D 4D 4F 44 45 20 20 20 3D 24 44 37 20 | ;.MODE =$D7 | 00000520: 20 20 3B 44 49 53 50 4C 41 59 20 4D 4F 44 45 20 | ;DISPLAY MODE | 00000530: 46 4C 41 47 0D 20 20 20 20 20 20 20 20 20 20 20 |FLAG. | 00000540: 20 20 20 3B 0D 43 49 4E 56 20 20 20 3D 24 30 33 | ;.CINV =$03| 00000550: 31 34 20 3B 4E 4F 52 4D 41 4C 20 49 52 51 20 56 |14 ;NORMAL IRQ V| 00000560: 45 43 54 4F 52 0D 49 42 53 4F 55 54 20 3D 24 30 |ECTOR.IBSOUT =$0| 00000570: 33 32 36 20 3B 4E 4F 52 4D 41 4C 20 43 48 52 4F |326 ;NORMAL CHRO| 00000580: 55 54 20 56 45 43 54 4F 52 0D 20 20 20 20 20 20 |UT VECTOR. | 00000590: 20 20 20 20 20 20 20 20 3B 0D 53 59 53 54 45 4D | ;.SYSTEM| 000005A0: 20 3D 24 30 41 30 30 20 3B 42 41 53 49 43 20 52 | =$0A00 ;BASIC R| 000005B0: 45 53 45 54 20 56 45 43 54 4F 52 0D 20 20 20 20 |ESET VECTOR. | 000005C0: 20 20 20 20 20 20 20 20 20 20 3B 0D 52 50 54 46 | ;.RPTF| 000005D0: 4C 47 20 3D 24 30 41 32 32 20 3B 4B 45 59 42 27 |LG =$0A22 ;KEYB'| 000005E0: 44 20 52 45 50 45 41 54 20 46 4C 41 47 0D 20 20 |D REPEAT FLAG. | 000005F0: 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D 42 41 | ;.BA| 00000600: 53 52 53 54 20 3D 24 34 30 30 33 20 3B 42 41 53 |SRST =$4003 ;BAS| 00000610: 49 43 20 57 41 52 4D 20 52 45 53 45 54 0D 20 20 |IC WARM RESET. | 00000620: 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D 54 4F | ;.TO| 00000630: 44 32 20 20 20 3D 24 44 44 30 38 20 3B 54 49 4D |D2 =$DD08 ;TIM| 00000640: 45 20 4F 46 20 44 41 59 20 43 4C 4F 43 4B 20 23 |E OF DAY CLOCK #| 00000650: 32 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |2. | 00000660: 3B 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |;. | 00000670: 3B 0D 3B 53 43 52 45 45 4E 20 45 44 49 54 4F 52 |;.;SCREEN EDITOR| 00000680: 20 46 55 4E 43 54 49 4F 4E 53 2E 2E 2E 0D 20 20 | FUNCTIONS.... | 00000690: 20 20 20 20 20 20 20 20 20 20 20 20 3B 0D 57 56 | ;.WV| 000006A0: 44 43 4D 20 20 3D 24 43 44 43 41 20 3B 57 52 49 |DCM =$CDCA ;WRI| 000006B0: 54 45 20 54 4F 20 38 35 36 33 20 52 41 4D 0D 57 |TE TO 8563 RAM.W| 000006C0: 56 44 43 52 20 20 3D 24 43 44 43 43 20 3B 57 52 |VDCR =$CDCC ;WR| 000006D0: 49 54 45 20 54 4F 20 38 35 36 33 20 52 45 47 49 |ITE TO 8563 REGI| 000006E0: 53 54 45 52 0D 20 20 20 20 20 20 20 20 20 20 20 |STER. | 000006F0: 20 20 20 3B 0D 20 20 20 20 20 20 20 20 20 20 20 | ;. | 00000700: 20 20 20 3B 0D 3B 4B 45 52 4E 41 4C 20 46 55 4E | ;.;KERNAL FUN| 00000710: 43 54 49 4F 4E 53 2E 2E 2E 0D 20 20 20 20 20 20 |CTIONS.... | 00000720: 20 20 20 20 20 20 20 20 3B 0D 43 48 52 4F 55 54 | ;.CHROUT| 00000730: 20 3D 24 45 46 37 39 20 3B 4F 55 54 50 55 54 20 | =$EF79 ;OUTPUT | 00000740: 41 20 42 59 54 45 0D 49 52 51 20 20 20 20 3D 24 |A BYTE.IRQ =$| 00000750: 46 41 36 35 20 3B 4E 4F 52 4D 41 4C 20 49 52 51 |FA65 ;NORMAL IRQ| 00000760: 0D 43 52 54 49 20 20 20 3D 24 46 46 33 33 20 3B |.CRTI =$FF33 ;| 00000770: 49 52 51 20 48 41 4E 44 4C 45 52 20 45 58 49 54 |IRQ HANDLER EXIT| 00000780: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000790: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 000007A0: 0D 3B 34 30 20 43 4F 4C 20 56 49 43 20 53 43 52 |.;40 COL VIC SCR| 000007B0: 45 45 4E 20 52 41 4D 2E 2E 2E 0D 20 20 20 20 20 |EEN RAM.... | 000007C0: 20 20 20 20 20 20 20 20 20 3B 0D 56 43 52 41 4D | ;.VCRAM| 000007D0: 20 20 3D 24 30 34 30 30 20 3B 53 54 41 52 54 20 | =$0400 ;START | 000007E0: 4F 46 20 44 49 53 50 4C 41 59 20 52 41 4D 0D 56 |OF DISPLAY RAM.V| 000007F0: 4C 52 41 4D 20 20 3D 24 44 38 30 30 20 3B 53 54 |LRAM =$D800 ;ST| 00000800: 41 52 54 20 4F 46 20 43 4F 4C 4F 52 20 52 41 4D |ART OF COLOR RAM| 00000810: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000820: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000830: 0D 3B 53 49 44 20 43 48 49 50 20 52 45 47 49 53 |.;SID CHIP REGIS| 00000840: 54 45 52 53 20 28 56 4F 49 43 45 20 33 29 2E 2E |TERS (VOICE 3)..| 00000850: 2E 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |.. | 00000860: 3B 0D 46 52 45 4C 4F 33 20 3D 24 44 34 30 45 20 |;.FRELO3 =$D40E | 00000870: 3B 46 52 45 51 55 45 4E 43 59 20 43 54 52 4C 20 |;FREQUENCY CTRL | 00000880: 28 4C 4F 29 0D 46 52 45 48 49 33 20 3D 24 44 34 |(LO).FREHI3 =$D4| 00000890: 30 46 20 3B 46 52 45 51 55 45 4E 43 59 20 43 54 |0F ;FREQUENCY CT| 000008A0: 52 4C 20 28 48 49 29 0D 20 20 20 20 20 20 20 20 |RL (HI). | 000008B0: 20 20 20 20 20 20 3B 0D 56 43 52 45 47 33 20 3D | ;.VCREG3 =| 000008C0: 24 44 34 31 32 20 3B 43 4F 4E 54 52 4F 4C 20 52 |$D412 ;CONTROL R| 000008D0: 45 47 49 53 54 45 52 0D 20 20 20 20 20 20 20 20 |EGISTER. | 000008E0: 20 20 20 20 20 20 3B 0D 53 55 52 45 4C 33 20 3D | ;.SUREL3 =| 000008F0: 24 44 34 31 34 20 3B 53 55 53 54 41 49 4E 2F 52 |$D414 ;SUSTAIN/R| 00000900: 45 4C 45 41 53 45 0D 20 20 20 20 20 20 20 20 20 |ELEASE. | 00000910: 20 20 20 20 20 3B 0D 53 49 47 56 4F 4C 20 3D 24 | ;.SIGVOL =$| 00000920: 44 34 31 38 20 3B 53 49 44 20 56 4F 4C 55 4D 45 |D418 ;SID VOLUME| 00000930: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000940: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000950: 0D 3B 38 30 20 43 4F 4C 20 38 35 36 33 20 56 44 |.;80 COL 8563 VD| 00000960: 43 20 41 53 53 49 47 4E 4D 45 4E 54 53 2E 2E 2E |C ASSIGNMENTS...| 00000970: 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |. ;| 00000980: 0D 53 43 52 41 4D 31 20 3D 37 32 20 20 20 20 3B |.SCRAM1 =72 ;| 00000990: 53 43 52 45 45 4E 20 52 41 4D 20 28 54 49 4D 45 |SCREEN RAM (TIME| 000009A0: 29 0D 53 43 52 41 4D 32 20 3D 31 35 32 20 20 20 |).SCRAM2 =152 | 000009B0: 3B 53 43 52 45 45 4E 20 52 41 4D 20 28 44 41 54 |;SCREEN RAM (DAT| 000009C0: 45 29 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 |E). | 000009D0: 20 3B 0D 41 54 52 41 4D 31 20 3D 32 31 32 30 20 | ;.ATRAM1 =2120 | 000009E0: 20 3B 41 54 54 52 49 42 55 54 45 20 52 41 4D 20 | ;ATTRIBUTE RAM | 000009F0: 28 54 49 4D 45 29 0D 41 54 52 41 4D 32 20 3D 32 |(TIME).ATRAM2 =2| 00000A00: 32 30 30 20 20 3B 41 54 54 52 49 42 55 54 45 20 |200 ;ATTRIBUTE | 00000A10: 52 41 4D 20 28 44 41 54 45 29 0D 20 20 20 20 20 |RAM (DATE). | 00000A20: 20 20 20 20 20 20 20 20 20 3B 0D 55 50 52 45 47 | ;.UPREG| 00000A30: 20 20 3D 31 38 20 20 20 20 3B 55 50 44 41 54 45 | =18 ;UPDATE| 00000A40: 20 52 45 47 49 53 54 45 52 0D 20 20 20 20 20 20 | REGISTER. | 00000A50: 20 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 | ;. | 00000A60: 20 20 20 20 20 20 20 20 3B 0D 3B 3D 3D 3D 3D 3D | ;.;=====| 00000A70: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D |================| 00000A80: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 0D 20 20 20 |============. | 00000A90: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B | ;. ;.;| 00000AA0: 55 53 45 52 2D 41 43 43 45 53 53 49 42 4C 45 20 |USER-ACCESSIBLE | 00000AB0: 4D 45 4D 4F 52 59 2E 2E 2E 0D 20 20 20 20 20 20 |MEMORY.... | 00000AC0: 20 3B 0D 54 44 54 41 20 20 20 2E 41 53 43 20 22 | ;.TDTA .ASC "| 00000AD0: 20 20 2D 20 20 2D 20 20 22 0D 20 20 20 20 20 20 | - - ". | 00000AE0: 20 2E 42 59 54 45 20 30 20 3B 20 41 53 43 49 49 | .BYTE 0 ; ASCII| 00000AF0: 20 44 41 54 45 0D 54 4F 44 41 20 20 20 2E 41 53 | DATE.TODA .AS| 00000B00: 43 20 22 20 20 3A 20 20 3A 20 20 22 20 20 20 20 |C " : : " | 00000B10: 20 20 20 20 20 20 20 20 20 20 0D 20 20 20 20 20 | . | 00000B20: 20 20 2E 42 59 54 45 20 30 20 3B 20 41 53 43 49 | .BYTE 0 ; ASCI| 00000B30: 49 20 54 49 4D 45 0D 54 44 54 43 20 20 20 2E 42 |I TIME.TDTC .B| 00000B40: 59 54 45 20 32 35 35 2C 20 32 35 35 2C 20 32 35 |YTE 255, 255, 25| 00000B50: 35 20 20 3B 42 43 44 20 44 41 54 45 0D 3B 0D 44 |5 ;BCD DATE.;.D| 00000B60: 46 4C 47 20 20 20 2E 42 59 54 45 20 30 20 3B 31 |FLG .BYTE 0 ;1| 00000B70: 20 3D 20 4E 4F 20 44 49 53 50 4C 41 59 0D 43 46 | = NO DISPLAY.CF| 00000B80: 4C 47 20 20 20 2E 42 59 54 45 20 37 20 3B 44 49 |LG .BYTE 7 ;DI| 00000B90: 53 50 4C 41 59 20 43 4F 4C 4F 52 0D 52 46 4C 47 |SPLAY COLOR.RFLG| 00000BA0: 20 20 20 2E 42 59 54 45 20 30 20 3B 31 20 3D 20 | .BYTE 0 ;1 = | 00000BB0: 52 45 56 45 52 53 45 20 56 49 44 45 4F 0D 20 20 |REVERSE VIDEO. | 00000BC0: 20 20 20 20 20 3B 0D 4B 45 59 20 20 20 20 2E 42 | ;.KEY .B| 00000BD0: 59 54 45 20 30 2C 20 30 2C 20 30 2C 20 30 0D 20 |YTE 0, 0, 0, 0. | 00000BE0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 3B | ;. ;| 00000BF0: 0D 3B 45 58 49 54 20 56 45 43 54 4F 52 2E 2E 2E |.;EXIT VECTOR...| 00000C00: 0D 20 20 20 20 20 20 20 3B 0D 49 52 51 41 20 20 |. ;.IRQA | 00000C10: 20 2E 57 4F 52 44 20 49 52 51 0D 20 20 20 20 20 | .WORD IRQ. | 00000C20: 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 41 4C | ;. ;.;AL| 00000C30: 41 52 4D 20 52 45 47 49 53 54 45 52 53 2E 2E 2E |ARM REGISTERS...| 00000C40: 0D 20 20 20 20 20 20 20 3B 0D 41 4C 54 43 20 20 |. ;.ALTC | 00000C50: 20 2E 42 59 54 45 20 32 35 35 2C 20 32 35 35 20 | .BYTE 255, 255 | 00000C60: 3B 54 49 4D 45 20 28 48 3A 4D 29 0D 20 20 20 20 |;TIME (H:M). | 00000C70: 20 20 20 3B 0D 41 46 4C 47 20 20 20 2E 42 59 54 | ;.AFLG .BYT| 00000C80: 45 20 32 35 35 20 20 20 20 20 3B 45 4E 41 42 4C |E 255 ;ENABL| 00000C90: 45 20 46 4C 41 47 0D 20 20 20 20 20 20 20 3B 0D |E FLAG. ;.| 00000CA0: 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |;---------------| 00000CB0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00000CC0: 2D 2D 0D 20 20 20 20 20 20 20 3B 0D 3B 45 4E 54 |--. ;.;ENT| 00000CD0: 52 59 20 50 4F 49 4E 54 20 54 4F 20 53 54 41 52 |RY POINT TO STAR| 00000CE0: 54 20 44 49 53 50 4C 41 59 0D 20 20 20 20 20 20 |T DISPLAY. | 00000CF0: 20 3B 0D 43 4C 4B 4F 4E 20 20 4A 4D 50 20 53 54 | ;.CLKON JMP ST| 00000D00: 41 52 54 20 3B 53 54 41 52 54 20 44 49 53 50 4C |ART ;START DISPL| 00000D10: 41 59 0D 20 20 20 20 20 20 20 3B 0D 3B 2D 2D 2D |AY. ;.;---| 00000D20: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00000D30: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 |--------------. | 00000D40: 20 20 20 20 20 20 3B 0D 3B 45 4E 54 52 59 20 50 | ;.;ENTRY P| 00000D50: 4F 49 4E 54 20 54 4F 20 53 54 4F 50 20 44 49 53 |OINT TO STOP DIS| 00000D60: 50 4C 41 59 0D 20 20 20 20 20 20 20 3B 0D 43 4C |PLAY. ;.CL| 00000D70: 4B 4F 46 20 20 4A 4D 50 20 53 54 4F 50 20 3B 53 |KOF JMP STOP ;S| 00000D80: 54 4F 50 20 44 49 53 50 4C 41 59 0D 20 20 20 20 |TOP DISPLAY. | 00000D90: 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D | ;.;----------| 00000DA0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00000DB0: 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 20 20 20 3B |-------. ;| 00000DC0: 0D 3B 42 43 44 20 54 49 4D 45 20 53 54 4F 52 41 |.;BCD TIME STORA| 00000DD0: 47 45 0D 20 20 20 20 20 20 20 3B 0D 54 4F 44 43 |GE. ;.TODC| 00000DE0: 20 20 20 2E 42 59 54 45 20 30 2C 20 30 2C 20 30 | .BYTE 0, 0, 0| 00000DF0: 20 3B 48 52 53 20 4D 49 4E 20 53 45 43 0D 20 20 | ;HRS MIN SEC. | 00000E00: 20 20 20 20 20 3B 0D 3B 3D 3D 3D 3D 3D 3D 3D 3D | ;.;========| 00000E10: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D |================| 00000E20: 3D 3D 3D 3D 3D 3D 3D 3D 3D 0D 20 20 20 20 20 20 |=========. | 00000E30: 20 3B 0D 3B 53 54 4F 50 20 43 4C 4F 43 4B 2D 43 | ;.;STOP CLOCK-C| 00000E40: 41 4C 45 4E 44 41 52 20 44 49 53 50 4C 41 59 0D |ALENDAR DISPLAY.| 00000E50: 20 20 20 20 20 20 20 3B 0D 53 54 4F 50 20 20 20 | ;.STOP | 00000E60: 4C 44 58 20 43 49 4E 56 20 3B 49 52 51 20 56 45 |LDX CINV ;IRQ VE| 00000E70: 43 54 4F 52 0D 20 20 20 20 20 20 20 4C 44 59 20 |CTOR. LDY | 00000E80: 43 49 4E 56 2B 31 0D 20 20 20 20 20 20 20 43 50 |CINV+1. CP| 00000E90: 58 20 23 3C 44 43 43 20 3B 44 49 53 50 4C 41 59 |X #<DCC ;DISPLAY| 00000EA0: 20 56 45 43 54 4F 52 0D 20 20 20 20 20 20 20 42 | VECTOR. B| 00000EB0: 4E 45 20 43 4C 4B 4F 46 32 20 3B 4E 4F 54 20 52 |NE CLKOF2 ;NOT R| 00000EC0: 55 4E 4E 49 4E 47 0D 20 20 20 20 20 20 20 3B 0D |UNNING. ;.| 00000ED0: 20 20 20 20 20 20 20 43 50 59 20 23 3E 44 43 43 | CPY #>DCC| 00000EE0: 0D 20 20 20 20 20 20 20 42 4E 45 20 43 4C 4B 4F |. BNE CLKO| 00000EF0: 46 32 20 3B 4E 4F 54 20 52 55 4E 4E 49 4E 47 0D |F2 ;NOT RUNNING.| 00000F00: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 00000F10: 53 45 49 20 3B 49 4E 54 45 52 52 55 50 54 53 20 |SEI ;INTERRUPTS | 00000F20: 4F 46 46 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |OFF. ;. | 00000F30: 20 20 20 20 4C 44 58 20 49 52 51 41 20 3B 4F 52 | LDX IRQA ;OR| 00000F40: 49 47 49 4E 41 4C 20 49 52 51 20 56 45 43 54 4F |IGINAL IRQ VECTO| 00000F50: 52 0D 20 20 20 20 20 20 20 4C 44 59 20 49 52 51 |R. LDY IRQ| 00000F60: 41 2B 31 0D 20 20 20 20 20 20 20 53 54 58 20 43 |A+1. STX C| 00000F70: 49 4E 56 0D 20 20 20 20 20 20 20 53 54 59 20 43 |INV. STY C| 00000F80: 49 4E 56 2B 31 0D 20 20 20 20 20 20 20 3B 0D 20 |INV+1. ;. | 00000F90: 20 20 20 20 20 20 4C 44 58 20 42 53 4F 55 54 41 | LDX BSOUTA| 00000FA0: 0D 20 20 20 20 20 20 20 4C 44 59 20 42 53 4F 55 |. LDY BSOU| 00000FB0: 54 41 2B 31 0D 20 20 20 20 20 20 20 53 54 58 20 |TA+1. STX | 00000FC0: 49 42 53 4F 55 54 20 3B 52 45 53 54 4F 52 45 20 |IBSOUT ;RESTORE | 00000FD0: 43 48 52 4F 55 54 20 56 45 43 54 4F 52 0D 20 20 |CHROUT VECTOR. | 00000FE0: 20 20 20 20 20 53 54 59 20 49 42 53 4F 55 54 2B | STY IBSOUT+| 00000FF0: 31 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 |1. ;. | 00001000: 20 20 4C 44 58 20 41 4C 52 53 54 31 0D 20 20 20 | LDX ALRST1. | 00001010: 20 20 20 20 4C 44 59 20 41 4C 52 53 54 31 2B 31 | LDY ALRST1+1| 00001020: 0D 20 20 20 20 20 20 20 53 54 58 20 53 59 53 54 |. STX SYST| 00001030: 45 4D 20 3B 52 45 53 54 4F 52 45 20 53 59 53 54 |EM ;RESTORE SYST| 00001040: 45 4D 20 56 45 43 54 4F 52 0D 20 20 20 20 20 20 |EM VECTOR. | 00001050: 20 53 54 59 20 53 59 53 54 45 4D 2B 31 0D 20 20 | STY SYSTEM+1. | 00001060: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 43 4C | ;. CL| 00001070: 49 20 3B 49 4E 54 45 52 52 55 50 54 53 20 4F 4E |I ;INTERRUPTS ON| 00001080: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 00001090: 20 4C 44 59 20 23 33 20 3B 4F 46 46 53 45 54 0D | LDY #3 ;OFFSET.| 000010A0: 20 20 20 20 20 20 20 4C 44 41 20 23 30 0D 20 20 | LDA #0. | 000010B0: 20 20 20 20 20 3B 0D 43 4C 4B 4F 46 31 20 53 54 | ;.CLKOF1 ST| 000010C0: 41 20 4B 45 59 2C 59 20 3B 57 49 50 45 20 4F 55 |A KEY,Y ;WIPE OU| 000010D0: 54 20 49 44 20 4B 45 59 0D 20 20 20 20 20 20 20 |T ID KEY. | 000010E0: 44 45 59 0D 20 20 20 20 20 20 20 42 50 4C 20 43 |DEY. BPL C| 000010F0: 4C 4B 4F 46 31 20 3B 4C 4F 4F 50 0D 20 20 20 20 |LKOF1 ;LOOP. | 00001100: 20 20 20 3B 0D 43 4C 4B 4F 46 32 20 52 54 53 0D | ;.CLKOF2 RTS.| 00001110: 20 20 20 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D | ;.;------| 00001120: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00001130: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 |-----------. | 00001140: 20 20 20 3B 0D 3B 53 54 41 52 54 20 43 4C 4F 43 | ;.;START CLOC| 00001150: 4B 2D 43 41 4C 45 4E 44 41 52 20 44 49 53 50 4C |K-CALENDAR DISPL| 00001160: 41 59 0D 20 20 20 20 20 20 20 3B 0D 53 54 41 52 |AY. ;.STAR| 00001170: 54 20 20 4C 44 58 20 43 49 4E 56 20 3B 49 52 51 |T LDX CINV ;IRQ| 00001180: 20 56 45 43 54 4F 52 0D 20 20 20 20 20 20 20 4C | VECTOR. L| 00001190: 44 59 20 43 49 4E 56 2B 31 0D 20 20 20 20 20 20 |DY CINV+1. | 000011A0: 20 43 50 58 20 23 3C 44 43 43 0D 20 20 20 20 20 | CPX #<DCC. | 000011B0: 20 20 42 4E 45 20 53 54 41 52 54 31 20 3B 43 48 | BNE START1 ;CH| 000011C0: 41 4E 47 45 20 56 45 43 54 4F 52 0D 20 20 20 20 |ANGE VECTOR. | 000011D0: 20 20 20 3B 0D 20 20 20 20 20 20 20 43 50 59 20 | ;. CPY | 000011E0: 23 3E 44 43 43 0D 20 20 20 20 20 20 20 42 45 51 |#>DCC. BEQ| 000011F0: 20 53 54 41 52 54 33 20 3B 44 49 53 50 4C 41 59 | START3 ;DISPLAY| 00001200: 20 49 53 20 52 55 4E 4E 4E 49 4E 47 0D 20 20 20 | IS RUNNNING. | 00001210: 20 20 20 20 3B 0D 53 54 41 52 54 31 20 53 54 58 | ;.START1 STX| 00001220: 20 49 52 51 41 20 3B 53 41 56 45 20 45 58 49 53 | IRQA ;SAVE EXIS| 00001230: 54 49 4E 47 2E 2E 2E 0D 20 20 20 20 20 20 20 53 |TING.... S| 00001240: 54 59 20 49 52 51 41 2B 31 20 3B 49 52 51 20 56 |TY IRQA+1 ;IRQ V| 00001250: 45 43 54 4F 52 0D 20 20 20 20 20 20 20 3B 0D 20 |ECTOR. ;. | 00001260: 20 20 20 20 20 20 53 45 49 0D 20 20 20 20 20 20 | SEI. | 00001270: 20 3B 0D 20 20 20 20 20 20 20 4C 44 58 20 23 3C | ;. LDX #<| 00001280: 44 43 43 20 3B 43 48 41 4E 47 45 2E 2E 2E 0D 20 |DCC ;CHANGE.... | 00001290: 20 20 20 20 20 20 4C 44 59 20 23 3E 44 43 43 20 | LDY #>DCC | 000012A0: 3B 49 52 51 20 56 45 43 54 4F 52 20 53 4F 20 54 |;IRQ VECTOR SO T| 000012B0: 48 41 54 2E 2E 2E 0D 20 20 20 20 20 20 20 53 54 |HAT.... ST| 000012C0: 58 20 43 49 4E 56 20 3B 43 4C 4F 43 4B 2D 43 41 |X CINV ;CLOCK-CA| 000012D0: 4C 45 4E 44 41 52 20 52 55 4E 53 0D 20 20 20 20 |LENDAR RUNS. | 000012E0: 20 20 20 53 54 59 20 43 49 4E 56 2B 31 0D 20 20 | STY CINV+1. | 000012F0: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 | ;. LD| 00001300: 58 20 49 42 53 4F 55 54 20 3B 53 41 56 45 20 43 |X IBSOUT ;SAVE C| 00001310: 55 52 52 45 4E 54 2E 2E 2E 0D 20 20 20 20 20 20 |URRENT.... | 00001320: 20 4C 44 59 20 49 42 53 4F 55 54 2B 31 20 3B 43 | LDY IBSOUT+1 ;C| 00001330: 48 52 4F 55 54 20 56 45 43 54 4F 52 0D 20 20 20 |HROUT VECTOR. | 00001340: 20 20 20 20 53 54 58 20 42 53 4F 55 54 41 0D 20 | STX BSOUTA. | 00001350: 20 20 20 20 20 20 53 54 59 20 42 53 4F 55 54 41 | STY BSOUTA| 00001360: 2B 31 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 |+1. ;. | 00001370: 20 20 20 4C 44 58 20 23 3C 43 52 44 59 20 3B 43 | LDX #<CRDY ;C| 00001380: 48 41 4E 47 45 2E 2E 2E 0D 20 20 20 20 20 20 20 |HANGE.... | 00001390: 4C 44 59 20 23 3E 43 52 44 59 20 3B 43 48 52 4F |LDY #>CRDY ;CHRO| 000013A0: 55 54 20 56 45 43 54 4F 52 20 53 4F 2E 2E 2E 0D |UT VECTOR SO....| 000013B0: 20 20 20 20 20 20 20 53 54 58 20 49 42 53 4F 55 | STX IBSOU| 000013C0: 54 20 3B 44 45 4C 41 59 20 52 4F 55 54 49 4E 45 |T ;DELAY ROUTINE| 000013D0: 2E 2E 2E 0D 20 20 20 20 20 20 20 53 54 59 20 49 |.... STY I| 000013E0: 42 53 4F 55 54 2B 31 20 3B 49 4E 54 45 52 43 45 |BSOUT+1 ;INTERCE| 000013F0: 50 54 53 20 49 54 0D 20 20 20 20 20 20 20 3B 0D |PTS IT. ;.| 00001400: 20 20 20 20 20 20 20 4C 44 58 20 53 59 53 54 45 | LDX SYSTE| 00001410: 4D 20 3B 42 41 53 49 43 20 52 45 53 45 54 0D 20 |M ;BASIC RESET. | 00001420: 20 20 20 20 20 20 4C 44 59 20 53 59 53 54 45 4D | LDY SYSTEM| 00001430: 2B 31 0D 20 20 20 20 20 20 20 53 54 58 20 41 4C |+1. STX AL| 00001440: 52 53 54 31 20 3B 53 54 4F 52 45 0D 20 20 20 20 |RST1 ;STORE. | 00001450: 20 20 20 53 54 59 20 41 4C 52 53 54 31 2B 31 0D | STY ALRST1+1.| 00001460: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 00001470: 4C 44 58 20 23 3C 41 4C 52 53 54 20 3B 41 4C 54 |LDX #<ALRST ;ALT| 00001480: 45 52 4E 41 54 45 20 52 45 53 45 54 0D 20 20 20 |ERNATE RESET. | 00001490: 20 20 20 20 4C 44 59 20 23 3E 41 4C 52 53 54 0D | LDY #>ALRST.| 000014A0: 20 20 20 20 20 20 20 53 54 58 20 53 59 53 54 45 | STX SYSTE| 000014B0: 4D 20 3B 4E 45 57 20 52 45 53 45 54 20 56 45 43 |M ;NEW RESET VEC| 000014C0: 54 4F 52 0D 20 20 20 20 20 20 20 53 54 59 20 53 |TOR. STY S| 000014D0: 59 53 54 45 4D 2B 31 0D 20 20 20 20 20 20 20 3B |YSTEM+1. ;| 000014E0: 0D 20 20 20 20 20 20 20 4C 44 41 20 54 4F 44 32 |. LDA TOD2| 000014F0: 20 3B 47 49 56 45 20 43 4C 4F 43 4B 20 41 20 4B | ;GIVE CLOCK A K| 00001500: 49 43 4B 2E 2E 2E 0D 20 20 20 20 20 20 20 53 54 |ICK.... ST| 00001510: 41 20 54 4F 44 32 20 3B 54 4F 20 47 45 54 20 49 |A TOD2 ;TO GET I| 00001520: 54 20 53 54 41 52 54 45 44 0D 20 20 20 20 20 20 |T STARTED. | 00001530: 20 3B 0D 20 20 20 20 20 20 20 43 4C 49 0D 20 20 | ;. CLI. | 00001540: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 | ;. LD| 00001550: 59 20 23 33 20 3B 4F 46 46 53 45 54 0D 20 20 20 |Y #3 ;OFFSET. | 00001560: 20 20 20 20 3B 0D 53 54 41 52 54 32 20 4C 44 41 | ;.START2 LDA| 00001570: 20 4B 45 59 53 54 52 2C 59 20 3B 4B 45 59 0D 20 | KEYSTR,Y ;KEY. | 00001580: 20 20 20 20 20 20 53 54 41 20 4B 45 59 2C 59 20 | STA KEY,Y | 00001590: 3B 45 4E 41 42 4C 45 20 4B 45 59 0D 20 20 20 20 |;ENABLE KEY. | 000015A0: 20 20 20 44 45 59 0D 20 20 20 20 20 20 20 42 50 | DEY. BP| 000015B0: 4C 20 53 54 41 52 54 32 20 3B 4C 4F 4F 50 0D 20 |L START2 ;LOOP. | 000015C0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 49 | ;. I| 000015D0: 4E 59 0D 20 20 20 20 20 20 20 53 54 59 20 44 46 |NY. STY DF| 000015E0: 4C 47 20 3B 43 4C 45 41 52 20 44 49 53 50 4C 41 |LG ;CLEAR DISPLA| 000015F0: 59 20 46 4C 41 47 0D 20 20 20 20 20 20 20 53 54 |Y FLAG. ST| 00001600: 59 20 4C 46 4C 47 20 3B 43 4C 45 41 52 20 4C 4F |Y LFLG ;CLEAR LO| 00001610: 43 4B 4F 55 54 20 46 4C 41 47 0D 20 20 20 20 20 |CKOUT FLAG. | 00001620: 20 20 3B 0D 53 54 41 52 54 33 20 52 54 53 0D 20 | ;.START3 RTS. | 00001630: 20 20 20 20 20 20 3B 0D 3B 3D 3D 3D 3D 3D 3D 3D | ;.;=======| 00001640: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D |================| 00001650: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 0D 20 20 20 20 20 |==========. | 00001660: 20 20 3B 0D 3B 55 50 44 41 54 45 20 26 20 44 49 | ;.;UPDATE & DI| 00001670: 53 50 4C 41 59 20 54 49 4D 45 20 26 20 44 41 54 |SPLAY TIME & DAT| 00001680: 45 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 20 20 |E. ;.DCC | 00001690: 20 20 43 4C 44 20 3B 42 49 4E 41 52 59 20 4D 4F | CLD ;BINARY MO| 000016A0: 44 45 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 |DE. ;. | 000016B0: 20 20 20 4C 44 41 20 54 4F 44 32 20 3B 54 45 4E | LDA TOD2 ;TEN| 000016C0: 54 48 53 20 4F 46 20 53 45 43 4F 4E 44 53 0D 20 |THS OF SECONDS. | 000016D0: 20 20 20 20 20 20 42 45 51 20 44 43 43 30 32 20 | BEQ DCC02 | 000016E0: 3B 54 45 4E 54 48 53 20 41 52 45 20 5A 45 52 4F |;TENTHS ARE ZERO| 000016F0: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 00001700: 20 4C 44 41 20 23 30 0D 20 20 20 20 20 20 20 53 | LDA #0. S| 00001710: 54 41 20 4C 46 4C 47 20 3B 43 4C 45 41 52 20 4C |TA LFLG ;CLEAR L| 00001720: 4F 43 4B 4F 55 54 20 46 4C 41 47 0D 20 20 20 20 |OCKOUT FLAG. | 00001730: 20 20 20 3B 0D 44 43 43 30 31 20 20 4A 4D 50 20 | ;.DCC01 JMP | 00001740: 28 49 52 51 41 29 20 3B 4E 4F 52 4D 41 4C 20 49 |(IRQA) ;NORMAL I| 00001750: 52 51 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 30 |RQ. ;.DCC0| 00001760: 32 20 20 42 49 54 20 4C 46 4C 47 0D 20 20 20 20 |2 BIT LFLG. | 00001770: 20 20 20 42 4D 49 20 44 43 43 30 31 20 3B 55 50 | BMI DCC01 ;UP| 00001780: 44 41 54 45 20 4C 4F 43 4B 45 44 20 4F 55 54 0D |DATE LOCKED OUT.| 00001790: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 000017A0: 44 45 43 20 4C 46 4C 47 20 3B 53 45 54 20 4C 4F |DEC LFLG ;SET LO| 000017B0: 43 4B 4F 55 54 20 46 4C 41 47 0D 20 20 20 20 20 |CKOUT FLAG. | 000017C0: 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 52 45 | ;. ;.;RE| 000017D0: 41 44 20 43 4C 4F 43 4B 20 52 45 47 49 53 54 45 |AD CLOCK REGISTE| 000017E0: 52 53 2E 2E 2E 0D 20 20 20 20 20 20 20 3B 0D 20 |RS.... ;. | 000017F0: 20 20 20 20 20 20 4C 44 58 20 23 33 20 3B 54 4F | LDX #3 ;TO| 00001800: 44 32 20 4F 46 46 53 45 54 0D 20 20 20 20 20 20 |D2 OFFSET. | 00001810: 20 4C 44 59 20 23 30 20 3B 53 54 4F 52 41 47 45 | LDY #0 ;STORAGE| 00001820: 20 4F 46 46 53 45 54 0D 20 20 20 20 20 20 20 3B | OFFSET. ;| 00001830: 0D 44 43 43 30 33 20 20 4C 44 41 20 54 4F 44 32 |.DCC03 LDA TOD2| 00001840: 2C 58 20 3B 46 45 54 43 48 20 54 49 4D 45 20 56 |,X ;FETCH TIME V| 00001850: 41 4C 55 45 0D 20 20 20 20 20 20 20 44 45 58 0D |ALUE. DEX.| 00001860: 20 20 20 20 20 20 20 42 4D 49 20 44 43 43 30 34 | BMI DCC04| 00001870: 20 3B 46 49 4E 49 53 48 45 44 0D 20 20 20 20 20 | ;FINISHED. | 00001880: 20 20 3B 0D 20 20 20 20 20 20 20 53 54 41 20 54 | ;. STA T| 00001890: 4F 44 43 2C 59 20 3B 53 41 56 45 20 49 4E 20 42 |ODC,Y ;SAVE IN B| 000018A0: 55 46 46 45 52 0D 20 20 20 20 20 20 20 3B 0D 20 |UFFER. ;. | 000018B0: 20 20 20 20 20 20 49 4E 59 0D 20 20 20 20 20 20 | INY. | 000018C0: 20 42 4E 45 20 44 43 43 30 33 20 3B 4C 4F 4F 50 | BNE DCC03 ;LOOP| 000018D0: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 000018E0: 20 3B 0D 3B 54 45 53 54 20 41 4D 2F 50 4D 20 46 | ;.;TEST AM/PM F| 000018F0: 4C 41 47 20 26 20 41 44 4A 55 53 54 20 48 4F 55 |LAG & ADJUST HOU| 00001900: 52 53 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 30 |RS. ;.DCC0| 00001910: 34 20 20 4C 44 41 20 54 4F 44 43 20 3B 42 43 44 |4 LDA TODC ;BCD| 00001920: 20 48 4F 55 52 53 0D 20 20 20 20 20 20 20 42 4D | HOURS. BM| 00001930: 49 20 44 43 43 30 35 20 3B 49 54 27 53 20 50 4D |I DCC05 ;IT'S PM| 00001940: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 00001950: 20 43 4D 50 20 23 24 31 32 0D 20 20 20 20 20 20 | CMP #$12. | 00001960: 20 42 4E 45 20 44 43 43 30 36 20 3B 4E 4F 54 20 | BNE DCC06 ;NOT | 00001970: 4D 49 44 4E 49 54 45 0D 20 20 20 20 20 20 20 3B |MIDNITE. ;| 00001980: 0D 20 20 20 20 20 20 20 4C 44 41 20 23 30 0D 20 |. LDA #0. | 00001990: 20 20 20 20 20 20 42 45 51 20 44 43 43 30 36 20 | BEQ DCC06 | 000019A0: 3B 53 45 54 20 48 4F 55 52 53 20 54 4F 20 4D 49 |;SET HOURS TO MI| 000019B0: 44 4E 49 54 45 0D 20 20 20 20 20 20 20 3B 0D 44 |DNITE. ;.D| 000019C0: 43 43 30 35 20 20 41 4E 44 20 23 25 30 31 31 31 |CC05 AND #%0111| 000019D0: 31 31 31 31 20 3B 4D 41 53 4B 20 41 4D 2F 50 4D |1111 ;MASK AM/PM| 000019E0: 20 42 49 54 0D 20 20 20 20 20 20 20 43 4D 50 20 | BIT. CMP | 000019F0: 23 24 31 32 0D 20 20 20 20 20 20 20 42 43 53 20 |#$12. BCS | 00001A00: 44 43 43 30 36 20 3B 49 54 27 53 20 4E 4F 4F 4E |DCC06 ;IT'S NOON| 00001A10: 20 53 54 52 41 49 47 48 54 20 55 50 0D 20 20 20 | STRAIGHT UP. | 00001A20: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 53 45 44 | ;. SED| 00001A30: 20 3B 44 45 43 49 4D 41 4C 20 4D 4F 44 45 0D 20 | ;DECIMAL MODE. | 00001A40: 20 20 20 20 20 20 41 44 43 20 23 24 31 32 20 3B | ADC #$12 ;| 00001A50: 43 48 41 4E 47 45 20 54 4F 20 32 34 20 48 4F 55 |CHANGE TO 24 HOU| 00001A60: 52 53 0D 20 20 20 20 20 20 20 43 4C 44 20 3B 42 |RS. CLD ;B| 00001A70: 49 4E 41 52 59 20 4D 4F 44 45 0D 20 20 20 20 20 |INARY MODE. | 00001A80: 20 20 3B 0D 44 43 43 30 36 20 20 53 54 41 20 54 | ;.DCC06 STA T| 00001A90: 4F 44 43 20 3B 43 4F 4E 56 45 52 54 45 44 20 48 |ODC ;CONVERTED H| 00001AA0: 4F 55 52 53 0D 20 20 20 20 20 20 20 3B 0D 20 20 |OURS. ;. | 00001AB0: 20 20 20 20 20 3B 0D 3B 54 45 53 54 20 46 4F 52 | ;.;TEST FOR| 00001AC0: 20 41 4C 41 52 4D 20 54 49 4D 45 2E 2E 2E 0D 20 | ALARM TIME.... | 00001AD0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 42 | ;. B| 00001AE0: 49 54 20 41 46 4C 47 20 3B 43 48 45 43 4B 20 46 |IT AFLG ;CHECK F| 00001AF0: 4C 41 47 0D 20 20 20 20 20 20 20 42 4D 49 20 44 |LAG. BMI D| 00001B00: 43 43 30 39 20 3B 41 4C 41 52 4D 20 4E 4F 54 20 |CC09 ;ALARM NOT | 00001B10: 45 4E 41 42 4C 45 44 0D 20 20 20 20 20 20 20 3B |ENABLED. ;| 00001B20: 0D 20 20 20 20 20 20 20 4C 44 59 20 23 31 20 3B |. LDY #1 ;| 00001B30: 4F 46 46 53 45 54 0D 20 20 20 20 20 20 20 3B 0D |OFFSET. ;.| 00001B40: 44 43 43 30 37 20 20 4C 44 41 20 41 4C 54 43 2C |DCC07 LDA ALTC,| 00001B50: 59 20 3B 41 4C 41 52 4D 20 54 49 4D 45 0D 20 20 |Y ;ALARM TIME. | 00001B60: 20 20 20 20 20 43 4D 50 20 54 4F 44 43 2C 59 20 | CMP TODC,Y | 00001B70: 3B 43 48 45 43 4B 20 41 47 41 49 4E 53 54 20 54 |;CHECK AGAINST T| 00001B80: 4F 44 0D 20 20 20 20 20 20 20 42 4E 45 20 44 43 |OD. BNE DC| 00001B90: 43 30 39 20 3B 4E 4F 54 20 54 49 4D 45 0D 20 20 |C09 ;NOT TIME. | 00001BA0: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 44 45 | ;. DE| 00001BB0: 59 0D 20 20 20 20 20 20 20 42 50 4C 20 44 43 43 |Y. BPL DCC| 00001BC0: 30 37 20 3B 4C 4F 4F 50 0D 20 20 20 20 20 20 20 |07 ;LOOP. | 00001BD0: 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 53 4F 55 4E |;. ;.;SOUN| 00001BE0: 44 20 41 4C 41 52 4D 2E 2E 2E 0D 20 20 20 20 20 |D ALARM.... | 00001BF0: 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 23 | ;. LDA #| 00001C00: 31 35 0D 20 20 20 20 20 20 20 53 54 41 20 53 49 |15. STA SI| 00001C10: 47 56 4F 4C 20 3B 4D 41 58 20 56 4F 4C 55 4D 45 |GVOL ;MAX VOLUME| 00001C20: 0D 20 20 20 20 20 20 20 53 54 41 20 46 52 45 4C |. STA FREL| 00001C30: 4F 33 20 3B 53 45 54 20 46 52 45 51 55 45 4E 43 |O3 ;SET FREQUENC| 00001C40: 59 0D 20 20 20 20 20 20 20 53 54 41 20 46 52 45 |Y. STA FRE| 00001C50: 48 49 33 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |HI3. ;. | 00001C60: 20 20 20 20 4C 44 58 20 23 32 35 30 20 3B 44 55 | LDX #250 ;DU| 00001C70: 52 41 54 49 4F 4E 0D 20 20 20 20 20 20 20 4C 44 |RATION. LD| 00001C80: 59 20 23 33 33 20 3B 53 41 57 54 4F 4F 54 48 20 |Y #33 ;SAWTOOTH | 00001C90: 57 41 56 45 46 4F 52 4D 0D 20 20 20 20 20 20 20 |WAVEFORM. | 00001CA0: 53 54 58 20 53 55 52 45 4C 33 20 3B 53 55 53 54 |STX SUREL3 ;SUST| 00001CB0: 41 49 4E 2F 52 45 4C 45 41 53 45 0D 20 20 20 20 |AIN/RELEASE. | 00001CC0: 20 20 20 53 54 59 20 56 43 52 45 47 33 20 3B 41 | STY VCREG3 ;A| 00001CD0: 54 54 41 43 4B 2F 44 45 43 41 59 0D 20 20 20 20 |TTACK/DECAY. | 00001CE0: 20 20 20 3B 0D 20 20 20 20 20 20 20 44 45 59 0D | ;. DEY.| 00001CF0: 20 20 20 20 20 20 20 53 54 59 20 56 43 52 45 47 | STY VCREG| 00001D00: 33 20 3B 47 41 54 45 20 56 4F 49 43 45 0D 20 20 |3 ;GATE VOICE. | 00001D10: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D | ;. ;.| 00001D20: 3B 54 45 53 54 20 46 4F 52 20 53 54 52 4F 4B 45 |;TEST FOR STROKE| 00001D30: 20 4F 46 20 4D 49 44 4E 49 54 45 2E 2E 2E 0D 20 | OF MIDNITE.... | 00001D40: 20 20 20 20 20 20 3B 0D 44 43 43 30 39 20 20 4C | ;.DCC09 L| 00001D50: 44 59 20 23 32 20 3B 54 4F 44 43 20 4F 46 46 53 |DY #2 ;TODC OFFS| 00001D60: 45 54 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 31 |ET. ;.DCC1| 00001D70: 30 20 20 4C 44 41 20 54 4F 44 43 2C 59 20 3B 46 |0 LDA TODC,Y ;F| 00001D80: 45 54 43 48 20 54 49 4D 45 20 56 41 4C 55 45 0D |ETCH TIME VALUE.| 00001D90: 20 20 20 20 20 20 20 42 4E 45 20 44 43 43 31 36 | BNE DCC16| 00001DA0: 20 3B 4E 4F 54 20 4D 49 44 4E 49 54 45 0D 20 20 | ;NOT MIDNITE. | 00001DB0: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 44 45 | ;. DE| 00001DC0: 59 0D 20 20 20 20 20 20 20 42 50 4C 20 44 43 43 |Y. BPL DCC| 00001DD0: 31 30 20 3B 4C 4F 4F 50 0D 20 20 20 20 20 20 20 |10 ;LOOP. | 00001DE0: 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 54 45 53 54 |;. ;.;TEST| 00001DF0: 20 46 4F 52 20 4C 45 41 50 20 59 45 41 52 2E 2E | FOR LEAP YEAR..| 00001E00: 2E 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 |.. ;. | 00001E10: 20 20 4C 44 41 20 54 44 54 43 2B 32 20 3B 43 55 | LDA TDTC+2 ;CU| 00001E20: 52 52 45 4E 54 20 59 45 41 52 0D 20 20 20 20 20 |RRENT YEAR. | 00001E30: 20 20 4A 53 52 20 42 43 44 4F 46 20 3B 43 48 41 | JSR BCDOF ;CHA| 00001E40: 4E 47 45 20 54 4F 20 42 49 4E 41 52 59 0D 20 20 |NGE TO BINARY. | 00001E50: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 | ;. LD| 00001E60: 58 20 23 24 32 38 0D 20 20 20 20 20 20 20 3B 0D |X #$28. ;.| 00001E70: 20 20 20 20 20 20 20 4C 53 52 20 3B 44 49 56 49 | LSR ;DIVI| 00001E80: 44 45 20 42 59 20 32 0D 20 20 20 20 20 20 20 42 |DE BY 2. B| 00001E90: 43 53 20 44 43 43 31 31 20 3B 4F 44 44 20 59 45 |CS DCC11 ;ODD YE| 00001EA0: 41 52 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 |AR. ;. | 00001EB0: 20 20 20 4C 53 52 20 3B 44 49 56 49 44 45 20 41 | LSR ;DIVIDE A| 00001EC0: 47 41 49 4E 0D 20 20 20 20 20 20 20 42 43 53 20 |GAIN. BCS | 00001ED0: 44 43 43 31 31 20 3B 4E 4F 4E 2D 4C 45 41 50 20 |DCC11 ;NON-LEAP | 00001EE0: 59 45 41 52 0D 20 20 20 20 20 20 20 3B 0D 20 20 |YEAR. ;. | 00001EF0: 20 20 20 20 20 49 4E 58 20 3B 4C 45 41 50 20 59 | INX ;LEAP Y| 00001F00: 45 41 52 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 |EAR. ;.DCC| 00001F10: 31 31 20 20 53 54 58 20 43 4C 55 54 2B 31 20 3B |11 STX CLUT+1 ;| 00001F20: 4C 41 53 54 20 44 41 59 20 49 4E 20 46 45 42 2E |LAST DAY IN FEB.| 00001F30: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 00001F40: 20 3B 0D 3B 41 44 4A 55 53 54 20 44 41 54 45 20 | ;.;ADJUST DATE | 00001F50: 46 4F 52 20 45 4E 44 20 4F 46 20 4D 4F 4E 54 48 |FOR END OF MONTH| 00001F60: 2E 2E 2E 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |.... ;. | 00001F70: 20 20 20 20 4C 44 41 20 54 44 54 43 20 3B 46 45 | LDA TDTC ;FE| 00001F80: 54 43 48 20 4D 4F 4E 54 48 0D 20 20 20 20 20 20 |TCH MONTH. | 00001F90: 20 4A 53 52 20 42 43 44 4F 46 20 3B 43 48 41 4E | JSR BCDOF ;CHAN| 00001FA0: 47 45 20 54 4F 20 42 49 4E 41 52 59 0D 20 20 20 |GE TO BINARY. | 00001FB0: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 54 41 58 | ;. TAX| 00001FC0: 0D 20 20 20 20 20 20 20 44 45 58 20 3B 43 41 4C |. DEX ;CAL| 00001FD0: 45 4E 44 41 52 20 4C 4F 4F 4B 55 50 20 4F 46 46 |ENDAR LOOKUP OFF| 00001FE0: 53 45 54 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |SET. ;. | 00001FF0: 20 20 20 20 4C 44 41 20 54 44 54 43 2B 31 20 3B | LDA TDTC+1 ;| 00002000: 43 55 52 52 45 4E 54 20 44 41 59 0D 20 20 20 20 |CURRENT DAY. | 00002010: 20 20 20 43 4D 50 20 43 4C 55 54 2C 58 20 3B 4C | CMP CLUT,X ;L| 00002020: 41 53 54 20 44 41 59 20 4F 46 20 4D 4F 4E 54 48 |AST DAY OF MONTH| 00002030: 0D 20 20 20 20 20 20 20 42 4E 45 20 44 43 43 31 |. BNE DCC1| 00002040: 34 20 3B 4E 4F 54 20 45 4E 44 20 4F 46 20 4D 4F |4 ;NOT END OF MO| 00002050: 4E 54 48 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |NTH. ;. | 00002060: 20 20 20 20 43 50 58 20 23 31 31 0D 20 20 20 20 | CPX #11. | 00002070: 20 20 20 42 4E 45 20 44 43 43 31 32 20 3B 4E 4F | BNE DCC12 ;NO| 00002080: 54 20 44 45 43 45 4D 42 45 52 0D 20 20 20 20 20 |T DECEMBER. | 00002090: 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 54 | ;. LDA T| 000020A0: 44 54 43 2B 32 20 3B 43 55 52 52 45 4E 54 20 59 |DTC+2 ;CURRENT Y| 000020B0: 45 41 52 0D 20 20 20 20 20 20 20 4A 53 52 20 49 |EAR. JSR I| 000020C0: 44 56 20 3B 42 55 4D 50 20 59 45 41 52 0D 20 20 |DV ;BUMP YEAR. | 000020D0: 20 20 20 20 20 53 54 41 20 54 44 54 43 2B 32 20 | STA TDTC+2 | 000020E0: 3B 53 41 56 45 20 4E 45 57 20 59 45 41 52 0D 20 |;SAVE NEW YEAR. | 000020F0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C | ;. L| 00002100: 44 41 20 23 31 0D 20 20 20 20 20 20 20 42 4E 45 |DA #1. BNE| 00002110: 20 44 43 43 31 33 20 3B 53 45 54 20 4D 4F 4E 54 | DCC13 ;SET MONT| 00002120: 48 20 54 4F 20 4A 41 4E 55 41 52 59 0D 20 20 20 |H TO JANUARY. | 00002130: 20 20 20 20 3B 0D 44 43 43 31 32 20 20 4C 44 41 | ;.DCC12 LDA| 00002140: 20 54 44 54 43 20 3B 43 55 52 52 45 4E 54 20 4D | TDTC ;CURRENT M| 00002150: 4F 4E 54 48 0D 20 20 20 20 20 20 20 4A 53 52 20 |ONTH. JSR | 00002160: 49 44 56 20 3B 42 55 4D 50 0D 20 20 20 20 20 20 |IDV ;BUMP. | 00002170: 20 3B 0D 44 43 43 31 33 20 20 53 54 41 20 54 44 | ;.DCC13 STA TD| 00002180: 54 43 20 3B 4E 45 57 20 4D 4F 4E 54 48 0D 20 20 |TC ;NEW MONTH. | 00002190: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 | ;. LD| 000021A0: 41 20 23 31 0D 20 20 20 20 20 20 20 42 4E 45 20 |A #1. BNE | 000021B0: 44 43 43 31 35 20 3B 53 45 54 20 44 41 59 20 54 |DCC15 ;SET DAY T| 000021C0: 4F 20 31 53 54 20 4F 46 20 4D 4F 4E 54 48 0D 20 |O 1ST OF MONTH. | 000021D0: 20 20 20 20 20 20 3B 0D 44 43 43 31 34 20 20 4A | ;.DCC14 J| 000021E0: 53 52 20 49 44 56 20 3B 42 55 4D 50 20 44 41 59 |SR IDV ;BUMP DAY| 000021F0: 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 31 35 20 |. ;.DCC15 | 00002200: 20 53 54 41 20 54 44 54 43 2B 31 20 3B 4E 45 57 | STA TDTC+1 ;NEW| 00002210: 20 44 41 59 0D 20 20 20 20 20 20 20 3B 0D 20 20 | DAY. ;. | 00002220: 20 20 20 20 20 3B 0D 3B 44 45 43 4F 44 45 20 44 | ;.;DECODE D| 00002230: 41 54 45 20 46 4F 52 20 44 49 53 50 4C 41 59 2E |ATE FOR DISPLAY.| 00002240: 2E 2E 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 31 |... ;.DCC1| 00002250: 36 20 20 4C 44 41 20 54 44 54 43 20 3B 43 55 52 |6 LDA TDTC ;CUR| 00002260: 52 45 4E 54 20 4D 4F 4E 54 48 0D 20 20 20 20 20 |RENT MONTH. | 00002270: 20 20 4A 53 52 20 42 43 44 41 53 43 20 3B 44 45 | JSR BCDASC ;DE| 00002280: 43 4F 44 45 20 54 4F 20 41 53 43 49 49 0D 20 20 |CODE TO ASCII. | 00002290: 20 20 20 20 20 43 4D 50 20 23 22 30 22 0D 20 20 | CMP #"0". | 000022A0: 20 20 20 20 20 42 4E 45 20 44 43 43 31 37 0D 20 | BNE DCC17. | 000022B0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C | ;. L| 000022C0: 44 41 20 23 33 32 20 3B 42 4C 41 4E 4B 20 4C 45 |DA #32 ;BLANK LE| 000022D0: 41 44 49 4E 47 20 5A 45 52 4F 0D 20 20 20 20 20 |ADING ZERO. | 000022E0: 20 20 3B 0D 44 43 43 31 37 20 20 53 54 41 20 54 | ;.DCC17 STA T| 000022F0: 44 54 41 20 3B 53 41 56 45 20 54 45 4E 53 0D 20 |DTA ;SAVE TENS. | 00002300: 20 20 20 20 20 20 53 54 58 20 54 44 54 41 2B 31 | STX TDTA+1| 00002310: 20 3B 53 41 56 45 20 55 4E 49 54 53 0D 20 20 20 | ;SAVE UNITS. | 00002320: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 | ;. LDA| 00002330: 20 54 44 54 43 2B 31 20 3B 43 55 52 52 45 4E 54 | TDTC+1 ;CURRENT| 00002340: 20 44 41 59 0D 20 20 20 20 20 20 20 4A 53 52 20 | DAY. JSR | 00002350: 42 43 44 41 53 43 0D 20 20 20 20 20 20 20 53 54 |BCDASC. ST| 00002360: 41 20 54 44 54 41 2B 33 0D 20 20 20 20 20 20 20 |A TDTA+3. | 00002370: 53 54 58 20 54 44 54 41 2B 34 0D 20 20 20 20 20 |STX TDTA+4. | 00002380: 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 54 | ;. LDA T| 00002390: 44 54 43 2B 32 20 3B 43 55 52 52 45 4E 54 20 59 |DTC+2 ;CURRENT Y| 000023A0: 45 41 52 0D 20 20 20 20 20 20 20 4A 53 52 20 42 |EAR. JSR B| 000023B0: 43 44 41 53 43 0D 20 20 20 20 20 20 20 53 54 41 |CDASC. STA| 000023C0: 20 54 44 54 41 2B 36 0D 20 20 20 20 20 20 20 53 | TDTA+6. S| 000023D0: 54 58 20 54 44 54 41 2B 37 0D 20 20 20 20 20 20 |TX TDTA+7. | 000023E0: 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 44 45 43 | ;. ;.;DEC| 000023F0: 4F 44 45 20 54 49 4D 45 20 46 4F 52 20 44 49 53 |ODE TIME FOR DIS| 00002400: 50 4C 41 59 2E 2E 2E 0D 20 20 20 20 20 20 20 3B |PLAY.... ;| 00002410: 0D 20 20 20 20 20 20 20 4C 44 41 20 54 4F 44 43 |. LDA TODC| 00002420: 20 3B 48 4F 55 52 53 0D 20 20 20 20 20 20 20 4A | ;HOURS. J| 00002430: 53 52 20 42 43 44 41 53 43 0D 20 20 20 20 20 20 |SR BCDASC. | 00002440: 20 53 54 41 20 54 4F 44 41 0D 20 20 20 20 20 20 | STA TODA. | 00002450: 20 53 54 58 20 54 4F 44 41 2B 31 0D 20 20 20 20 | STX TODA+1. | 00002460: 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 | ;. LDA | 00002470: 54 4F 44 43 2B 31 20 3B 4D 49 4E 55 54 45 53 0D |TODC+1 ;MINUTES.| 00002480: 20 20 20 20 20 20 20 4A 53 52 20 42 43 44 41 53 | JSR BCDAS| 00002490: 43 0D 20 20 20 20 20 20 20 53 54 41 20 54 4F 44 |C. STA TOD| 000024A0: 41 2B 33 0D 20 20 20 20 20 20 20 53 54 58 20 54 |A+3. STX T| 000024B0: 4F 44 41 2B 34 0D 20 20 20 20 20 20 20 3B 0D 20 |ODA+4. ;. | 000024C0: 20 20 20 20 20 20 4C 44 41 20 54 4F 44 43 2B 32 | LDA TODC+2| 000024D0: 20 3B 53 45 43 4F 4E 44 53 0D 20 20 20 20 20 20 | ;SECONDS. | 000024E0: 20 4A 53 52 20 42 43 44 41 53 43 0D 20 20 20 20 | JSR BCDASC. | 000024F0: 20 20 20 53 54 41 20 54 4F 44 41 2B 36 0D 20 20 | STA TODA+6. | 00002500: 20 20 20 20 20 53 54 58 20 54 4F 44 41 2B 37 0D | STX TODA+7.| 00002510: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 00002520: 3B 0D 3B 44 49 53 50 4C 41 59 20 54 49 4D 45 20 |;.;DISPLAY TIME | 00002530: 26 20 44 41 54 45 2E 2E 2E 0D 20 20 20 20 20 20 |& DATE.... | 00002540: 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 44 46 | ;. LDA DF| 00002550: 4C 47 0D 20 20 20 20 20 20 20 42 4E 45 20 44 43 |LG. BNE DC| 00002560: 43 32 33 20 3B 44 49 53 50 4C 41 59 20 49 4E 48 |C23 ;DISPLAY INH| 00002570: 49 42 49 54 45 44 0D 20 20 20 20 20 20 20 3B 0D |IBITED. ;.| 00002580: 20 20 20 20 20 20 20 3B 0D 3B 44 49 53 50 4C 41 | ;.;DISPLA| 00002590: 59 20 4F 4E 20 34 30 20 43 4F 4C 55 4D 4E 20 53 |Y ON 40 COLUMN S| 000025A0: 43 52 45 45 4E 2E 2E 2E 0D 20 20 20 20 20 20 20 |CREEN.... | 000025B0: 3B 0D 44 43 43 31 38 20 20 4C 44 41 20 43 46 4C |;.DCC18 LDA CFL| 000025C0: 47 20 3B 44 49 53 50 4C 41 59 20 43 4F 4C 4F 52 |G ;DISPLAY COLOR| 000025D0: 0D 20 20 20 20 20 20 20 4C 44 59 20 23 37 20 3B |. LDY #7 ;| 000025E0: 4F 46 46 53 45 54 0D 20 20 20 20 20 20 20 3B 0D |OFFSET. ;.| 000025F0: 44 43 43 31 39 20 20 53 54 41 20 56 4C 52 41 4D |DCC19 STA VLRAM| 00002600: 2B 33 32 2C 59 20 3B 43 4F 4C 4F 52 0D 20 20 20 |+32,Y ;COLOR. | 00002610: 20 20 20 20 53 54 41 20 56 4C 52 41 4D 2B 37 32 | STA VLRAM+72| 00002620: 2C 59 0D 20 20 20 20 20 20 20 44 45 59 0D 20 20 |,Y. DEY. | 00002630: 20 20 20 20 20 42 50 4C 20 44 43 43 31 39 20 3B | BPL DCC19 ;| 00002640: 4C 4F 4F 50 0D 20 20 20 20 20 20 20 3B 0D 20 20 |LOOP. ;. | 00002650: 20 20 20 20 20 4C 44 58 20 52 46 4C 47 20 3B 4E | LDX RFLG ;N| 00002660: 4F 52 4D 41 4C 2F 52 45 56 45 52 53 45 20 46 4C |ORMAL/REVERSE FL| 00002670: 41 47 0D 20 20 20 20 20 20 20 4C 44 59 20 23 37 |AG. LDY #7| 00002680: 20 3B 4F 46 46 53 45 54 0D 20 20 20 20 20 20 20 | ;OFFSET. | 00002690: 3B 0D 44 43 43 32 30 20 20 4C 44 41 20 54 4F 44 |;.DCC20 LDA TOD| 000026A0: 41 2C 59 20 3B 46 45 54 43 48 20 54 49 4D 45 0D |A,Y ;FETCH TIME.| 000026B0: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 000026C0: 43 50 58 20 23 30 20 3B 54 45 53 54 20 52 45 56 |CPX #0 ;TEST REV| 000026D0: 45 52 53 45 20 46 4C 41 47 0D 20 20 20 20 20 20 |ERSE FLAG. | 000026E0: 20 42 45 51 20 44 43 43 32 31 20 3B 4E 4F 54 20 | BEQ DCC21 ;NOT | 000026F0: 52 45 56 45 52 53 45 44 0D 20 20 20 20 20 20 20 |REVERSED. | 00002700: 3B 0D 20 20 20 20 20 20 20 4F 52 41 20 23 31 32 |;. ORA #12| 00002710: 38 20 3B 52 45 56 45 52 53 45 0D 20 20 20 20 20 |8 ;REVERSE. | 00002720: 20 20 3B 0D 44 43 43 32 31 20 20 53 54 41 20 56 | ;.DCC21 STA V| 00002730: 43 52 41 4D 2B 33 32 2C 59 0D 20 20 20 20 20 20 |CRAM+32,Y. | 00002740: 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 54 44 | ;. LDA TD| 00002750: 54 41 2C 59 20 3B 46 45 54 43 48 20 44 41 54 45 |TA,Y ;FETCH DATE| 00002760: 0D 20 20 20 20 20 20 20 43 50 58 20 23 30 0D 20 |. CPX #0. | 00002770: 20 20 20 20 20 20 42 45 51 20 44 43 43 32 32 0D | BEQ DCC22.| 00002780: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 00002790: 4F 52 41 20 23 31 32 38 0D 20 20 20 20 20 20 20 |ORA #128. | 000027A0: 3B 0D 44 43 43 32 32 20 20 53 54 41 20 56 43 52 |;.DCC22 STA VCR| 000027B0: 41 4D 2B 37 32 2C 59 0D 20 20 20 20 20 20 20 3B |AM+72,Y. ;| 000027C0: 0D 20 20 20 20 20 20 20 44 45 59 0D 20 20 20 20 |. DEY. | 000027D0: 20 20 20 42 50 4C 20 44 43 43 32 30 0D 20 20 20 | BPL DCC20. | 000027E0: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B | ;. ;.;| 000027F0: 44 49 53 50 4C 41 59 20 4F 4E 20 38 30 20 43 4F |DISPLAY ON 80 CO| 00002800: 4C 55 4D 4E 20 53 43 52 45 45 4E 2E 2E 2E 0D 20 |LUMN SCREEN.... | 00002810: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C | ;. L| 00002820: 44 41 20 23 3E 53 43 52 41 4D 31 20 3B 41 44 44 |DA #>SCRAM1 ;ADD| 00002830: 52 45 53 53 20 46 4F 52 2E 2E 2E 0D 20 20 20 20 |RESS FOR.... | 00002840: 20 20 20 4C 44 59 20 23 3C 53 43 52 41 4D 31 20 | LDY #<SCRAM1 | 00002850: 3B 54 49 4D 45 20 44 49 53 50 4C 41 59 0D 20 20 |;TIME DISPLAY. | 00002860: 20 20 20 20 20 4A 53 52 20 53 45 54 52 41 4D 20 | JSR SETRAM | 00002870: 3B 53 45 54 20 55 50 20 56 44 43 20 52 41 4D 0D |;SET UP VDC RAM.| 00002880: 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 | ;. | 00002890: 4C 44 58 20 23 3C 54 4F 44 41 20 3B 50 45 54 41 |LDX #<TODA ;PETA| 000028A0: 53 43 49 49 20 54 49 4D 45 0D 20 20 20 20 20 20 |SCII TIME. | 000028B0: 20 4C 44 59 20 23 3E 54 4F 44 41 0D 20 20 20 20 | LDY #>TODA. | 000028C0: 20 20 20 4A 53 52 20 44 54 4F 44 20 3B 44 49 53 | JSR DTOD ;DIS| 000028D0: 50 4C 41 59 0D 20 20 20 20 20 20 20 3B 0D 20 20 |PLAY. ;. | 000028E0: 20 20 20 20 20 4C 44 41 20 23 3E 53 43 52 41 4D | LDA #>SCRAM| 000028F0: 32 20 3B 41 44 44 52 45 53 53 20 46 4F 52 2E 2E |2 ;ADDRESS FOR..| 00002900: 2E 0D 20 20 20 20 20 20 20 4C 44 59 20 23 3C 53 |.. LDY #<S| 00002910: 43 52 41 4D 32 20 3B 44 41 54 45 20 44 49 53 50 |CRAM2 ;DATE DISP| 00002920: 4C 41 59 0D 20 20 20 20 20 20 20 4A 53 52 20 53 |LAY. JSR S| 00002930: 45 54 52 41 4D 0D 20 20 20 20 20 20 20 3B 0D 20 |ETRAM. ;. | 00002940: 20 20 20 20 20 20 4C 44 58 20 23 3C 54 44 54 41 | LDX #<TDTA| 00002950: 20 3B 50 45 54 41 53 43 49 49 20 44 41 54 45 0D | ;PETASCII DATE.| 00002960: 20 20 20 20 20 20 20 4C 44 59 20 23 3E 54 44 54 | LDY #>TDT| 00002970: 41 0D 20 20 20 20 20 20 20 4A 53 52 20 44 54 4F |A. JSR DTO| 00002980: 44 20 3B 44 49 53 50 4C 41 59 0D 20 20 20 20 20 |D ;DISPLAY. | 00002990: 20 20 3B 0D 20 20 20 20 20 20 20 3B 0D 3B 53 45 | ;. ;.;SE| 000029A0: 54 20 38 30 20 43 4F 4C 55 4D 4E 20 41 54 54 52 |T 80 COLUMN ATTR| 000029B0: 49 42 55 54 45 53 2E 2E 2E 0D 20 20 20 20 20 20 |IBUTES.... | 000029C0: 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 23 3E | ;. LDA #>| 000029D0: 41 54 52 41 4D 31 20 3B 41 44 44 52 45 53 53 20 |ATRAM1 ;ADDRESS | 000029E0: 46 4F 52 2E 2E 2E 0D 20 20 20 20 20 20 20 4C 44 |FOR.... LD| 000029F0: 59 20 23 3C 41 54 52 41 4D 31 20 3B 54 49 4D 45 |Y #<ATRAM1 ;TIME| 00002A00: 20 41 54 54 52 49 42 55 54 45 0D 20 20 20 20 20 | ATTRIBUTE. | 00002A10: 20 20 4A 53 52 20 53 45 54 52 41 4D 0D 20 20 20 | JSR SETRAM. | 00002A20: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4A 53 52 | ;. JSR| 00002A30: 20 41 54 52 53 54 20 3B 53 45 54 20 55 50 20 41 | ATRST ;SET UP A| 00002A40: 54 54 52 49 42 55 54 45 53 0D 20 20 20 20 20 20 |TTRIBUTES. | 00002A50: 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 20 23 3E | ;. LDA #>| 00002A60: 41 54 52 41 4D 32 20 3B 41 44 44 52 45 53 53 20 |ATRAM2 ;ADDRESS | 00002A70: 46 4F 52 2E 2E 2E 0D 20 20 20 20 20 20 20 4C 44 |FOR.... LD| 00002A80: 59 20 23 3C 41 54 52 41 4D 32 20 3B 44 41 54 45 |Y #<ATRAM2 ;DATE| 00002A90: 20 41 54 54 52 49 42 55 54 45 0D 20 20 20 20 20 | ATTRIBUTE. | 00002AA0: 20 20 4A 53 52 20 53 45 54 52 41 4D 0D 20 20 20 | JSR SETRAM. | 00002AB0: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4A 53 52 | ;. JSR| 00002AC0: 20 41 54 52 53 54 20 3B 53 45 54 20 55 50 20 41 | ATRST ;SET UP A| 00002AD0: 54 54 52 49 42 55 54 45 53 0D 20 20 20 20 20 20 |TTRIBUTES. | 00002AE0: 20 3B 0D 20 20 20 20 20 20 20 42 49 54 20 4D 4F | ;. BIT MO| 00002AF0: 44 45 0D 20 20 20 20 20 20 20 42 50 4C 20 44 43 |DE. BPL DC| 00002B00: 43 32 33 20 3B 34 30 20 43 4F 4C 55 4D 4E 20 4D |C23 ;40 COLUMN M| 00002B10: 4F 44 45 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |ODE. ;. | 00002B20: 20 20 20 20 4A 4D 50 20 43 52 54 49 20 3B 42 59 | JMP CRTI ;BY| 00002B30: 50 41 53 53 20 52 45 53 54 20 4F 46 20 49 52 51 |PASS REST OF IRQ| 00002B40: 0D 20 20 20 20 20 20 20 3B 0D 44 43 43 32 33 20 |. ;.DCC23 | 00002B50: 20 4A 4D 50 20 28 49 52 51 41 29 20 3B 43 4F 4E | JMP (IRQA) ;CON| 00002B60: 54 49 4E 55 45 20 49 52 51 0D 20 20 20 20 20 20 |TINUE IRQ. | 00002B70: 20 3B 0D 3B 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D | ;.;============| 00002B80: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D |================| 00002B90: 3D 3D 3D 3D 3D 0D 20 20 20 20 20 20 20 3B 0D 3B |=====. ;.;| 00002BA0: 44 49 53 50 4C 41 59 20 54 49 4D 45 20 4F 52 20 |DISPLAY TIME OR | 00002BB0: 44 41 54 45 0D 20 20 20 20 20 20 20 3B 0D 44 54 |DATE. ;.DT| 00002BC0: 4F 44 20 20 20 53 54 58 20 44 54 4F 44 30 32 20 |OD STX DTOD02 | 00002BD0: 3B 53 4F 55 52 43 45 20 41 44 44 52 45 53 53 0D |;SOURCE ADDRESS.| 00002BE0: 20 20 20 20 20 20 20 53 54 59 20 44 54 4F 44 30 | STY DTOD0| 00002BF0: 32 2B 31 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 |2+1. ;. | 00002C00: 20 20 20 20 4C 44 59 20 23 30 20 3B 4F 46 46 53 | LDY #0 ;OFFS| 00002C10: 45 54 0D 20 20 20 20 20 20 20 3B 0D 44 54 4F 44 |ET. ;.DTOD| 00002C20: 30 31 20 2E 42 59 54 45 20 24 42 39 20 3B 4C 44 |01 .BYTE $B9 ;LD| 00002C30: 41 20 4C 4C 48 48 2C 59 20 4F 50 2D 43 4F 44 45 |A LLHH,Y OP-CODE| 00002C40: 0D 20 20 20 20 20 20 20 3B 0D 44 54 4F 44 30 32 |. ;.DTOD02| 00002C50: 20 2A 3D 2A 2B 32 20 3B 53 4F 55 52 43 45 20 41 | *=*+2 ;SOURCE A| 00002C60: 44 44 52 45 53 53 0D 20 20 20 20 20 20 20 3B 0D |DDRESS. ;.| 00002C70: 20 20 20 20 20 20 20 42 45 51 20 41 54 52 53 54 | BEQ ATRST| 00002C80: 33 20 3B 45 4E 44 20 4F 46 20 53 54 52 49 4E 47 |3 ;END OF STRING| 00002C90: 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 |. ;. | 00002CA0: 20 4A 53 52 20 57 56 44 43 4D 20 3B 4F 55 54 50 | JSR WVDCM ;OUTP| 00002CB0: 55 54 20 54 4F 20 38 35 36 33 0D 20 20 20 20 20 |UT TO 8563. | 00002CC0: 20 20 49 4E 59 0D 20 20 20 20 20 20 20 42 4E 45 | INY. BNE| 00002CD0: 20 44 54 4F 44 30 31 20 3B 4C 4F 4F 50 0D 20 20 | DTOD01 ;LOOP. | 00002CE0: 20 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D | ;.;--------| 00002CF0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00002D00: 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 20 20 |---------. | 00002D10: 20 3B 0D 3B 53 45 54 20 55 50 20 44 49 53 50 4C | ;.;SET UP DISPL| 00002D20: 41 59 20 41 54 54 52 49 42 55 54 45 53 0D 20 20 |AY ATTRIBUTES. | 00002D30: 20 20 20 20 20 3B 0D 41 54 52 53 54 20 20 4C 44 | ;.ATRST LD| 00002D40: 59 20 23 38 20 3B 43 4F 55 4E 54 45 52 0D 20 20 |Y #8 ;COUNTER. | 00002D50: 20 20 20 20 20 3B 0D 41 54 52 53 54 31 20 4C 44 | ;.ATRST1 LD| 00002D60: 41 20 43 46 4C 47 20 3B 47 45 54 20 43 4F 4C 4F |A CFLG ;GET COLO| 00002D70: 52 0D 20 20 20 20 20 20 20 4C 44 58 20 52 46 4C |R. LDX RFL| 00002D80: 47 0D 20 20 20 20 20 20 20 42 45 51 20 41 54 52 |G. BEQ ATR| 00002D90: 53 54 32 20 3B 4E 4F 20 52 45 56 45 52 53 45 20 |ST2 ;NO REVERSE | 00002DA0: 44 49 53 50 4C 41 59 0D 20 20 20 20 20 20 20 3B |DISPLAY. ;| 00002DB0: 0D 20 20 20 20 20 20 20 4F 52 41 20 23 25 30 31 |. ORA #%01| 00002DC0: 30 30 30 30 30 30 20 3B 52 45 56 45 52 53 45 0D |000000 ;REVERSE.| 00002DD0: 20 20 20 20 20 20 20 3B 0D 41 54 52 53 54 32 20 | ;.ATRST2 | 00002DE0: 4A 53 52 20 57 56 44 43 4D 20 3B 4F 55 54 50 55 |JSR WVDCM ;OUTPU| 00002DF0: 54 20 54 4F 20 38 35 36 33 0D 20 20 20 20 20 20 |T TO 8563. | 00002E00: 20 44 45 59 0D 20 20 20 20 20 20 20 42 4E 45 20 | DEY. BNE | 00002E10: 41 54 52 53 54 31 20 3B 4C 4F 4F 50 0D 20 20 20 |ATRST1 ;LOOP. | 00002E20: 20 20 20 20 3B 0D 41 54 52 53 54 33 20 52 54 53 | ;.ATRST3 RTS| 00002E30: 0D 20 20 20 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D |. ;.;-----| 00002E40: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00002E50: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 |------------. | 00002E60: 20 20 20 20 3B 0D 3B 53 45 54 20 55 50 20 56 44 | ;.;SET UP VD| 00002E70: 43 20 52 41 4D 20 41 44 44 52 45 53 53 0D 20 20 |C RAM ADDRESS. | 00002E80: 20 20 20 20 20 3B 0D 53 45 54 52 41 4D 20 4C 44 | ;.SETRAM LD| 00002E90: 58 20 23 55 50 52 45 47 20 3B 55 50 44 41 54 45 |X #UPREG ;UPDATE| 00002EA0: 20 52 45 47 49 53 54 45 52 0D 20 20 20 20 20 20 | REGISTER. | 00002EB0: 20 4A 53 52 20 57 56 44 43 52 20 3B 57 52 49 54 | JSR WVDCR ;WRIT| 00002EC0: 45 0D 20 20 20 20 20 20 20 49 4E 58 0D 20 20 20 |E. INX. | 00002ED0: 20 20 20 20 54 59 41 20 3B 53 57 41 50 20 48 49 | TYA ;SWAP HI| 00002EE0: 20 42 59 54 45 0D 20 20 20 20 20 20 20 4A 4D 50 | BYTE. JMP| 00002EF0: 20 57 56 44 43 52 0D 20 20 20 20 20 20 20 3B 0D | WVDCR. ;.| 00002F00: 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |;---------------| 00002F10: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00002F20: 2D 2D 0D 20 20 20 20 20 20 20 3B 0D 3B 43 48 52 |--. ;.;CHR| 00002F30: 4F 55 54 20 49 4E 54 45 52 43 45 50 54 20 26 20 |OUT INTERCEPT & | 00002F40: 54 52 41 50 0D 20 20 20 20 20 20 20 3B 0D 43 52 |TRAP. ;.CR| 00002F50: 44 59 20 20 20 50 48 41 20 3B 53 41 56 45 20 50 |DY PHA ;SAVE P| 00002F60: 52 49 4E 54 49 4E 47 20 43 48 41 52 2E 0D 20 20 |RINTING CHAR.. | 00002F70: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 42 49 | ;. BI| 00002F80: 54 20 4D 4F 44 45 0D 20 20 20 20 20 20 20 42 50 |T MODE. BP| 00002F90: 4C 20 43 52 44 59 30 31 20 3B 49 4E 20 34 30 20 |L CRDY01 ;IN 40 | 00002FA0: 43 4F 4C 55 4D 4E 53 0D 20 20 20 20 20 20 20 3B |COLUMNS. ;| 00002FB0: 0D 20 20 20 20 20 20 20 4C 44 41 20 44 46 4C 54 |. LDA DFLT| 00002FC0: 4F 20 3B 4F 55 54 50 55 54 20 44 45 56 49 43 45 |O ;OUTPUT DEVICE| 00002FD0: 0D 20 20 20 20 20 20 20 43 4D 50 20 23 33 0D 20 |. CMP #3. | 00002FE0: 20 20 20 20 20 20 42 4E 45 20 43 52 44 59 30 31 | BNE CRDY01| 00002FF0: 20 3B 4E 4F 54 20 53 43 52 45 45 4E 0D 20 20 20 | ;NOT SCREEN. | 00003000: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 4C 44 41 | ;. LDA| 00003010: 20 44 46 4C 47 20 3B 54 45 53 54 20 44 49 53 50 | DFLG ;TEST DISP| 00003020: 4C 41 59 20 46 4C 41 47 0D 20 20 20 20 20 20 20 |LAY FLAG. | 00003030: 42 4E 45 20 43 52 44 59 30 31 20 3B 44 49 53 50 |BNE CRDY01 ;DISP| 00003040: 4C 41 59 20 49 4E 48 49 42 49 54 45 44 0D 20 20 |LAY INHIBITED. | 00003050: 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 44 45 | ;. DE| 00003060: 43 20 44 46 4C 47 20 3B 42 4C 4F 43 4B 20 44 49 |C DFLG ;BLOCK DI| 00003070: 53 50 4C 41 59 0D 20 20 20 20 20 20 20 3B 0D 43 |SPLAY. ;.C| 00003080: 52 44 59 30 31 20 50 4C 41 20 3B 52 45 43 4F 56 |RDY01 PLA ;RECOV| 00003090: 45 52 20 43 48 41 52 41 43 54 45 52 0D 20 20 20 |ER CHARACTER. | 000030A0: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 2E 42 59 | ;. .BY| 000030B0: 54 45 20 33 32 20 3B 4A 53 52 20 4F 50 2D 43 4F |TE 32 ;JSR OP-CO| 000030C0: 44 45 0D 20 20 20 20 20 20 20 3B 0D 42 53 4F 55 |DE. ;.BSOU| 000030D0: 54 41 20 2E 57 4F 52 44 20 43 48 52 4F 55 54 20 |TA .WORD CHROUT | 000030E0: 3B 4E 4F 52 4D 41 4C 20 43 48 52 4F 55 54 0D 20 |;NORMAL CHROUT. | 000030F0: 20 20 20 20 20 20 3B 0D 20 20 20 20 20 20 20 42 | ;. B| 00003100: 49 54 20 44 46 4C 47 0D 20 20 20 20 20 20 20 42 |IT DFLG. B| 00003110: 50 4C 20 43 52 44 59 30 32 20 3B 4E 4F 20 52 45 |PL CRDY02 ;NO RE| 00003120: 53 45 54 20 4E 45 45 44 45 44 0D 20 20 20 20 20 |SET NEEDED. | 00003130: 20 20 3B 0D 20 20 20 20 20 20 20 49 4E 43 20 44 | ;. INC D| 00003140: 46 4C 47 20 3B 43 4C 45 41 52 20 46 4F 52 20 44 |FLG ;CLEAR FOR D| 00003150: 49 53 50 4C 41 59 0D 20 20 20 20 20 20 20 3B 0D |ISPLAY. ;.| 00003160: 43 52 44 59 30 32 20 52 54 53 0D 20 20 20 20 20 |CRDY02 RTS. | 00003170: 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D | ;.;-----------| 00003180: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00003190: 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 20 20 20 3B 0D |------. ;.| 000031A0: 3B 43 4F 4E 56 45 52 54 20 42 43 44 20 54 4F 20 |;CONVERT BCD TO | 000031B0: 50 45 54 41 53 43 49 49 0D 20 20 20 20 20 20 20 |PETASCII. | 000031C0: 3B 0D 42 43 44 41 53 43 20 4A 53 52 20 42 43 44 |;.BCDASC JSR BCD| 000031D0: 42 49 4E 20 3B 42 43 44 20 54 4F 20 42 49 4E 41 |BIN ;BCD TO BINA| 000031E0: 52 59 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 |RY. ;. | 000031F0: 20 20 20 50 48 41 20 3B 53 41 56 45 20 54 45 4E | PHA ;SAVE TEN| 00003200: 53 20 56 41 4C 55 45 0D 20 20 20 20 20 20 20 3B |S VALUE. ;| 00003210: 0D 20 20 20 20 20 20 20 54 58 41 20 3B 55 4E 49 |. TXA ;UNI| 00003220: 54 53 20 56 41 4C 55 45 0D 20 20 20 20 20 20 20 |TS VALUE. | 00003230: 4F 52 41 20 23 34 38 20 3B 43 48 41 4E 47 45 20 |ORA #48 ;CHANGE | 00003240: 54 4F 20 50 45 54 41 53 43 49 49 0D 20 20 20 20 |TO PETASCII. | 00003250: 20 20 20 54 41 58 20 3B 48 4F 4C 44 0D 20 20 20 | TAX ;HOLD. | 00003260: 20 20 20 20 3B 0D 20 20 20 20 20 20 20 50 4C 41 | ;. PLA| 00003270: 20 3B 46 45 54 43 48 20 54 45 4E 53 0D 20 20 20 | ;FETCH TENS. | 00003280: 20 20 20 20 4F 52 41 20 23 34 38 0D 20 20 20 20 | ORA #48. | 00003290: 20 20 20 3B 0D 20 20 20 20 20 20 20 52 54 53 0D | ;. RTS.| 000032A0: 20 20 20 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D | ;.;------| 000032B0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 000032C0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 |-----------. | 000032D0: 20 20 20 3B 0D 3B 42 43 44 20 44 49 47 49 54 20 | ;.;BCD DIGIT | 000032E0: 54 4F 20 32 20 42 49 4E 41 52 59 20 44 49 47 49 |TO 2 BINARY DIGI| 000032F0: 54 53 0D 20 20 20 20 20 20 20 3B 0D 42 43 44 42 |TS. ;.BCDB| 00003300: 49 4E 20 50 48 41 20 3B 53 41 56 45 20 42 43 44 |IN PHA ;SAVE BCD| 00003310: 20 56 41 4C 55 45 0D 20 20 20 20 20 20 20 3B 0D | VALUE. ;.| 00003320: 20 20 20 20 20 20 20 41 4E 44 20 23 31 35 20 3B | AND #15 ;| 00003330: 4D 41 53 4B 20 54 45 4E 53 20 4E 59 42 42 4C 45 |MASK TENS NYBBLE| 00003340: 0D 20 20 20 20 20 20 20 54 41 58 20 3B 55 4E 49 |. TAX ;UNI| 00003350: 54 53 20 49 4E 20 2E 58 20 52 45 47 49 53 54 45 |TS IN .X REGISTE| 00003360: 52 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 20 |R. ;. | 00003370: 20 20 50 4C 41 20 3B 46 45 54 43 48 20 42 43 44 | PLA ;FETCH BCD| 00003380: 20 56 41 4C 55 45 0D 20 20 20 20 20 20 20 3B 0D | VALUE. ;.| 00003390: 20 20 20 20 20 20 20 4C 53 52 20 3B 53 48 49 46 | LSR ;SHIF| 000033A0: 54 20 54 45 4E 53 20 4E 59 42 42 4C 45 0D 20 20 |T TENS NYBBLE. | 000033B0: 20 20 20 20 20 4C 53 52 20 20 0D 20 20 20 20 20 | LSR . | 000033C0: 20 20 4C 53 52 20 20 0D 20 20 20 20 20 20 20 4C | LSR . L| 000033D0: 53 52 20 20 0D 20 20 20 20 20 20 20 3B 0D 20 20 |SR . ;. | 000033E0: 20 20 20 20 20 52 54 53 0D 20 20 20 20 20 20 20 | RTS. | 000033F0: 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |;.;-------------| 00003400: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00003410: 2D 2D 2D 2D 0D 20 20 20 20 20 20 20 3B 0D 3B 42 |----. ;.;B| 00003420: 43 44 20 44 49 47 49 54 20 54 4F 20 31 20 42 49 |CD DIGIT TO 1 BI| 00003430: 4E 41 52 59 20 44 49 47 49 54 0D 20 20 20 20 20 |NARY DIGIT. | 00003440: 20 20 3B 0D 42 43 44 4F 46 20 20 4A 53 52 20 42 | ;.BCDOF JSR B| 00003450: 43 44 42 49 4E 20 3B 42 43 44 20 54 4F 20 42 49 |CDBIN ;BCD TO BI| 00003460: 4E 41 52 59 0D 20 20 20 20 20 20 20 3B 0D 20 20 |NARY. ;. | 00003470: 20 20 20 20 20 54 41 59 20 3B 54 45 4E 53 20 56 | TAY ;TENS V| 00003480: 41 4C 55 45 0D 20 20 20 20 20 20 20 54 58 41 20 |ALUE. TXA | 00003490: 3B 55 4E 49 54 53 0D 20 20 20 20 20 20 20 3B 0D |;UNITS. ;.| 000034A0: 20 20 20 20 20 20 20 43 4C 43 0D 20 20 20 20 20 | CLC. | 000034B0: 20 20 3B 0D 42 43 44 4F 46 31 20 44 45 59 20 3B | ;.BCDOF1 DEY ;| 000034C0: 43 4F 55 4E 54 45 52 0D 20 20 20 20 20 20 20 42 |COUNTER. B| 000034D0: 4D 49 20 49 44 56 30 31 20 3B 46 49 4E 49 53 48 |MI IDV01 ;FINISH| 000034E0: 45 44 0D 20 20 20 20 20 20 20 3B 0D 20 20 20 20 |ED. ;. | 000034F0: 20 20 20 41 44 43 20 23 31 30 0D 20 20 20 20 20 | ADC #10. | 00003500: 20 20 42 4E 45 20 42 43 44 4F 46 31 0D 20 20 20 | BNE BCDOF1. | 00003510: 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D | ;.;---------| 00003520: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00003530: 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 20 20 20 20 |--------. | 00003540: 3B 0D 3B 49 4E 43 52 45 4D 45 4E 54 20 44 41 54 |;.;INCREMENT DAT| 00003550: 45 20 56 41 4C 55 45 0D 20 20 20 20 20 20 20 3B |E VALUE. ;| 00003560: 0D 49 44 56 20 20 20 20 53 45 44 20 3B 44 45 43 |.IDV SED ;DEC| 00003570: 49 4D 41 4C 20 4D 4F 44 45 0D 20 20 20 20 20 20 |IMAL MODE. | 00003580: 20 3B 0D 20 20 20 20 20 20 20 43 4C 43 0D 20 20 | ;. CLC. | 00003590: 20 20 20 20 20 41 44 43 20 23 31 0D 20 20 20 20 | ADC #1. | 000035A0: 20 20 20 3B 0D 20 20 20 20 20 20 20 43 4C 44 20 | ;. CLD | 000035B0: 3B 42 49 4E 41 52 59 20 4D 4F 44 45 0D 20 20 20 |;BINARY MODE. | 000035C0: 20 20 20 20 3B 0D 49 44 56 30 31 20 20 52 54 53 | ;.IDV01 RTS| 000035D0: 0D 20 20 20 20 20 20 20 3B 0D 3B 2D 2D 2D 2D 2D |. ;.;-----| 000035E0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 000035F0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 20 20 20 |------------. | 00003600: 20 20 20 20 3B 0D 3B 41 4C 54 45 52 4E 41 54 45 | ;.;ALTERNATE| 00003610: 20 42 41 53 49 43 20 52 45 53 45 54 0D 20 20 20 | BASIC RESET. | 00003620: 20 20 20 20 3B 0D 41 4C 52 53 54 20 20 4A 53 52 | ;.ALRST JSR| 00003630: 20 53 54 41 52 54 20 3B 52 45 53 54 41 52 54 20 | START ;RESTART | 00003640: 43 4C 4F 43 4B 0D 20 20 20 20 20 20 20 3B 0D 20 |CLOCK. ;. | 00003650: 20 20 20 20 20 20 4C 44 41 20 23 30 0D 20 20 20 | LDA #0. | 00003660: 20 20 20 20 53 54 41 20 52 50 54 46 4C 47 20 3B | STA RPTFLG ;| 00003670: 52 45 50 45 41 54 20 4F 46 46 0D 20 20 20 20 20 |REPEAT OFF. | 00003680: 20 20 3B 0D 20 20 20 20 20 20 20 2E 42 59 54 45 | ;. .BYTE| 00003690: 20 24 34 43 20 3B 4A 4D 50 20 4C 4C 48 48 20 4F | $4C ;JMP LLHH O| 000036A0: 50 2D 43 4F 44 45 0D 20 20 20 20 20 20 20 3B 0D |P-CODE. ;.| 000036B0: 41 4C 52 53 54 31 20 2A 3D 2A 2B 32 20 3B 52 45 |ALRST1 *=*+2 ;RE| 000036C0: 53 45 54 20 4A 55 4D 50 0D 20 20 20 20 20 20 20 |SET JUMP. | 000036D0: 3B 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |;.;-------------| 000036E0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 000036F0: 2D 2D 2D 2D 0D 20 20 20 20 20 20 20 3B 0D 3B 43 |----. ;.;C| 00003700: 41 4C 45 4E 44 41 52 20 4C 4F 4F 4B 55 50 20 54 |ALENDAR LOOKUP T| 00003710: 41 42 4C 45 0D 20 20 20 20 20 20 20 3B 0D 43 4C |ABLE. ;.CL| 00003720: 55 54 20 20 20 2E 42 59 54 45 20 24 33 31 20 3B |UT .BYTE $31 ;| 00003730: 4A 41 4E 0D 20 20 20 20 20 20 20 2E 42 59 54 45 |JAN. .BYTE| 00003740: 20 24 32 38 20 3B 46 45 42 0D 20 20 20 20 20 20 | $28 ;FEB. | 00003750: 20 2E 42 59 54 45 20 24 33 31 20 3B 4D 41 52 0D | .BYTE $31 ;MAR.| 00003760: 20 20 20 20 20 20 20 2E 42 59 54 45 20 24 33 30 | .BYTE $30| 00003770: 20 3B 41 50 52 0D 20 20 20 20 20 20 20 2E 42 59 | ;APR. .BY| 00003780: 54 45 20 24 33 31 20 3B 4D 41 59 0D 20 20 20 20 |TE $31 ;MAY. | 00003790: 20 20 20 2E 42 59 54 45 20 24 33 30 20 3B 4A 55 | .BYTE $30 ;JU| 000037A0: 4E 0D 20 20 20 20 20 20 20 2E 42 59 54 45 20 24 |N. .BYTE $| 000037B0: 33 31 20 3B 4A 55 4C 0D 20 20 20 20 20 20 20 2E |31 ;JUL. .| 000037C0: 42 59 54 45 20 24 33 31 20 3B 41 55 47 0D 20 20 |BYTE $31 ;AUG. | 000037D0: 20 20 20 20 20 2E 42 59 54 45 20 24 33 30 20 3B | .BYTE $30 ;| 000037E0: 53 45 50 0D 20 20 20 20 20 20 20 2E 42 59 54 45 |SEP. .BYTE| 000037F0: 20 24 33 31 20 3B 4F 43 54 0D 20 20 20 20 20 20 | $31 ;OCT. | 00003800: 20 2E 42 59 54 45 20 24 33 30 20 3B 4E 4F 56 0D | .BYTE $30 ;NOV.| 00003810: 20 20 20 20 20 20 20 2E 42 59 54 45 20 24 33 31 | .BYTE $31| 00003820: 20 3B 44 45 43 0D 20 20 20 20 20 20 20 3B 0D 3B | ;DEC. ;.;| 00003830: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00003840: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------| 00003850: 2D 0D 20 20 20 20 20 20 20 3B 0D 3B 50 52 4F 47 |-. ;.;PROG| 00003860: 52 41 4D 20 53 54 4F 52 41 47 45 0D 20 20 20 20 |RAM STORAGE. | 00003870: 20 20 20 3B 0D 4B 45 59 53 54 52 20 2E 41 53 43 | ;.KEYSTR .ASC| 00003880: 20 22 43 4C 4B 22 20 20 0D 20 20 20 20 20 20 20 | "CLK" . | 00003890: 2E 42 59 54 45 20 30 0D 20 20 20 20 20 20 20 3B |.BYTE 0. ;| 000038A0: 0D 4C 46 4C 47 20 20 20 2A 3D 2A 2B 31 20 20 3B |.LFLG *=*+1 ;| 000038B0: 44 49 53 50 4C 41 59 20 4C 4F 43 4B 4F 55 54 0D |DISPLAY LOCKOUT.| 000038C0: 20 20 20 20 20 20 20 3B 0D 3B 3D 3D 3D 3D 3D 3D | ;.;======| 000038D0: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D |================| 000038E0: 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 0D 2E 45 4E 44 |===========..END| 000038F0: 0D |. |
;PUT"@0:CLOCK-CAL.BUD.; ** REWRITTEN IN
BUDDY 128 FORMAT.; .*=$1300 ; 4864..OBJ
"@0:CLK4864".;.;* * * * * * * * * * * *
* * * * *.;*
*.;* CLOCK & CALENDAR DISPLAY... *.
;* WITH AUDIBLE ALARM FUNCTION *.;*
*.;* C-128 M
ODE, 40 OR 80 COLUMNS *.;*
*.;* WRITTEN 11-16-85
W.J. BRIER *.;*
*.;* REVISED 6-05-87
*.;* *.
;* COPYRIGHT 1986 *.;*
*.;* THIS PR
OGRAM IS NOT TO BE... *.;* SOLD. IT IS
PERMISSIBLE... *.;* TO COPY IT BUT CR
EDIT MUST... *.;* BE GIVEN IN THE DOCUME
NTATION *.;*
*.;* SEE THE DOCUMENTATION FOR... *.
;* INSTRUCTIONS ON USING THIS... *.;* PR
OGRAM WITH YOUR SOFTWARE... *.;* AS WELL
AS DISTRIBUTION... *.;* LIMITATIONS.
*.;*
*.;* * * * * * * * * * * *
* * * * *. ;.
;.;* * * * * * * * * * * * * * * * *.;*
*.;* <<<
PROGRAM ASSIGNMENTS >>> *.;*
*.;* * * * * * * * *
* * * * * * * *. ;.
;.;SYSTEM VECTORS & POINTERS....
;.DFLTO =$9A ;OUTPUT DEV
ICE. ;.MODE =$D7 ;DISPL
AY MODE FLAG. ;.CINV =$03
14 ;NORMAL IRQ VECTOR.IBSOUT =$0326 ;NOR
MAL CHROUT VECTOR. ;.SYSTEM
=$0A00 ;BASIC RESET VECTOR.
;.RPTFLG =$0A22 ;KEYB'D REPEAT FLAG.
;.BASRST =$4003 ;BASIC WARM
RESET. ;.TOD2 =$DD08 ;TIM
E OF DAY CLOCK #2. ;.
;.;SCREEN EDITOR FUNCTIONS....
;.WVDCM =$CDCA ;WRITE TO 85
63 RAM.WVDCR =$CDCC ;WRITE TO 8563 REGI
STER. ;. ;.;KE
RNAL FUNCTIONS.... ;.CHROUT
=$EF79 ;OUTPUT A BYTE.IRQ =$FA65 ;NO
RMAL IRQ.CRTI =$FF33 ;IRQ HANDLER EXIT
. ;. ;.;40 COL
VIC SCREEN RAM.... ;.VCRAM
=$0400 ;START OF DISPLAY RAM.VLRAM =$
D800 ;START OF COLOR RAM. ;
. ;.;SID CHIP REGISTERS (VO
ICE 3).... ;.FRELO3 =$D40E
;FREQUENCY CTRL (LO).FREHI3 =$D40F ;FREQ
UENCY CTRL (HI). ;.VCREG3 =
$D412 ;CONTROL REGISTER. ;.
SUREL3 =$D414 ;SUSTAIN/RELEASE.
;.SIGVOL =$D418 ;SID VOLUME.
;. ;.;80 COL 8563 VD
C ASSIGNMENTS.... ;.SCRAM1
=72 ;SCREEN RAM (TIME).SCRAM2 =152
;SCREEN RAM (DATE). ;.ATRAM
1 =2120 ;ATTRIBUTE RAM (TIME).ATRAM2 =2
200 ;ATTRIBUTE RAM (DATE).
;.UPREG =18 ;UPDATE REGISTER.
;. ;.;=============
====================. ;. ;.;
USER-ACCESSIBLE MEMORY.... ;.TDTA
.ASC " - - ". .BYTE 0 ; ASCII
DATE.TODA .ASC " : : "
. .BYTE 0 ; ASCII TIME.TDTC .B
YTE 255, 255, 255 ;BCD DATE.;.DFLG .B
YTE 0 ;1 = NO DISPLAY.CFLG .BYTE 7 ;DI
SPLAY COLOR.RFLG .BYTE 0 ;1 = REVERSE
VIDEO. ;.KEY .BYTE 0, 0, 0, 0.
;. ;.;EXIT VECTOR....
;.IRQA .WORD IRQ. ;. ;.;AL
ARM REGISTERS.... ;.ALTC .BYTE 2
55, 255 ;TIME (H:M). ;.AFLG .BYT
E 255 ;ENABLE FLAG. ;.;-------
--------------------------. ;.;ENT
RY POINT TO START DISPLAY. ;.CLKON
JMP START ;START DISPLAY. ;.;---
------------------------------. ;.
;ENTRY POINT TO STOP DISPLAY. ;.CL
KOF JMP STOP ;STOP DISPLAY. ;.;--
-------------------------------. ;
.;BCD TIME STORAGE. ;.TODC .BYTE
0, 0, 0 ;HRS MIN SEC. ;.;========
=========================. ;.;STOP
CLOCK-CALENDAR DISPLAY. ;.STOP
LDX CINV ;IRQ VECTOR. LDY CINV+1.
CPX #<DCC ;DISPLAY VECTOR. B
NE CLKOF2 ;NOT RUNNING. ;. C
PY #>DCC. BNE CLKOF2 ;NOT RUNNING.
;. SEI ;INTERRUPTS OFF.
;. LDX IRQA ;ORIGINAL IRQ VECTO
R. LDY IRQA+1. STX CINV.
STY CINV+1. ;. LDX BSOUTA
. LDY BSOUTA+1. STX IBSOUT ;
RESTORE CHROUT VECTOR. STY IBSOUT+
1. ;. LDX ALRST1. LDY
ALRST1+1. STX SYSTEM ;RESTORE SYST
EM VECTOR. STY SYSTEM+1. ;.
CLI ;INTERRUPTS ON. ;.
LDY #3 ;OFFSET. LDA #0. ;.C
LKOF1 STA KEY,Y ;WIPE OUT ID KEY.
DEY. BPL CLKOF1 ;LOOP. ;.CLK
OF2 RTS. ;.;----------------------
-----------. ;.;START CLOCK-CALEND
AR DISPLAY. ;.START LDX CINV ;IRQ
VECTOR. LDY CINV+1. CPX #<D
CC. BNE START1 ;CHANGE VECTOR.
;. CPY #>DCC. BEQ START3
;DISPLAY IS RUNNNING. ;.START1 STX
IRQA ;SAVE EXISTING.... STY IRQA+
1 ;IRQ VECTOR. ;. SEI.
;. LDX #<DCC ;CHANGE.... LD
Y #>DCC ;IRQ VECTOR SO THAT.... ST
X CINV ;CLOCK-CALENDAR RUNS. STY C
INV+1. ;. LDX IBSOUT ;SAVE C
URRENT.... LDY IBSOUT+1 ;CHROUT VE
CTOR. STX BSOUTA. STY BSOUTA
+1. ;. LDX #<CRDY ;CHANGE...
. LDY #>CRDY ;CHROUT VECTOR SO....
STX IBSOUT ;DELAY ROUTINE....
STY IBSOUT+1 ;INTERCEPTS IT. ;.
LDX SYSTEM ;BASIC RESET. LD
Y SYSTEM+1. STX ALRST1 ;STORE.
STY ALRST1+1. ;. LDX #<AL
RST ;ALTERNATE RESET. LDY #>ALRST.
STX SYSTEM ;NEW RESET VECTOR.
STY SYSTEM+1. ;. LDA TOD2
;GIVE CLOCK A KICK.... STA TOD2 ;
TO GET IT STARTED. ;. CLI.
;. LDY #3 ;OFFSET. ;.ST
ART2 LDA KEYSTR,Y ;KEY. STA KEY,Y
;ENABLE KEY. DEY. BPL START2
;LOOP. ;. INY. STY DF
LG ;CLEAR DISPLAY FLAG. STY LFLG ;
CLEAR LOCKOUT FLAG. ;.START3 RTS.
;.;===============================
==. ;.;UPDATE & DISPLAY TIME & DAT
E. ;.DCC CLD ;BINARY MODE.
;. LDA TOD2 ;TENTHS OF SECONDS.
BEQ DCC02 ;TENTHS ARE ZERO.
;. LDA #0. STA LFLG ;CLEAR L
OCKOUT FLAG. ;.DCC01 JMP (IRQA) ;
NORMAL IRQ. ;.DCC02 BIT LFLG.
BMI DCC01 ;UPDATE LOCKED OUT. ;
. DEC LFLG ;SET LOCKOUT FLAG.
;. ;.;READ CLOCK REGISTERS....
;. LDX #3 ;TOD2 OFFSET.
LDY #0 ;STORAGE OFFSET. ;.DCC03
LDA TOD2,X ;FETCH TIME VALUE. DEX.
BMI DCC04 ;FINISHED. ;.
STA TODC,Y ;SAVE IN BUFFER. ;.
INY. BNE DCC03 ;LOOP.
;. ;.;TEST AM/PM FLAG & ADJUST HOU
RS. ;.DCC04 LDA TODC ;BCD HOURS.
BMI DCC05 ;IT'S PM. ;.
CMP #$12. BNE DCC06 ;NOT MIDNITE.
;. LDA #0. BEQ DCC06
;SET HOURS TO MIDNITE. ;.DCC05 AN
D #%01111111 ;MASK AM/PM BIT. CMP
#$12. BCS DCC06 ;IT'S NOON STRAIGH
T UP. ;. SED ;DECIMAL MODE.
ADC #$12 ;CHANGE TO 24 HOURS.
CLD ;BINARY MODE. ;.DCC06 STA T
ODC ;CONVERTED HOURS. ;. ;.;
TEST FOR ALARM TIME.... ;. B
IT AFLG ;CHECK FLAG. BMI DCC09 ;AL
ARM NOT ENABLED. ;. LDY #1 ;
OFFSET. ;.DCC07 LDA ALTC,Y ;ALARM
TIME. CMP TODC,Y ;CHECK AGAINST T
OD. BNE DCC09 ;NOT TIME. ;.
DEY. BPL DCC07 ;LOOP.
;. ;.;SOUND ALARM.... ;.
LDA #15. STA SIGVOL ;MAX VOLUME
. STA FRELO3 ;SET FREQUENCY.
STA FREHI3. ;. LDX #250 ;DU
RATION. LDY #33 ;SAWTOOTH WAVEFORM
. STX SUREL3 ;SUSTAIN/RELEASE.
STY VCREG3 ;ATTACK/DECAY. ;.
DEY. STY VCREG3 ;GATE VOICE.
;. ;.;TEST FOR STROKE OF MIDN
ITE.... ;.DCC09 LDY #2 ;TODC OFFS
ET. ;.DCC10 LDA TODC,Y ;FETCH TIM
E VALUE. BNE DCC16 ;NOT MIDNITE.
;. DEY. BPL DCC10 ;LOOP
. ;. ;.;TEST FOR LEAP YEAR..
.. ;. LDA TDTC+2 ;CURRENT YE
AR. JSR BCDOF ;CHANGE TO BINARY.
;. LDX #$28. ;. L
SR ;DIVIDE BY 2. BCS DCC11 ;ODD YE
AR. ;. LSR ;DIVIDE AGAIN.
BCS DCC11 ;NON-LEAP YEAR. ;.
INX ;LEAP YEAR. ;.DCC11 STX
CLUT+1 ;LAST DAY IN FEB.. ;.
;.;ADJUST DATE FOR END OF MONTH....
;. LDA TDTC ;FETCH MONTH.
JSR BCDOF ;CHANGE TO BINARY. ;.
TAX. DEX ;CALENDAR LOOKUP OFF
SET. ;. LDA TDTC+1 ;CURRENT
DAY. CMP CLUT,X ;LAST DAY OF MONTH
. BNE DCC14 ;NOT END OF MONTH.
;. CPX #11. BNE DCC12 ;NO
T DECEMBER. ;. LDA TDTC+2 ;C
URRENT YEAR. JSR IDV ;BUMP YEAR.
STA TDTC+2 ;SAVE NEW YEAR. ;.
LDA #1. BNE DCC13 ;SET MONT
H TO JANUARY. ;.DCC12 LDA TDTC ;C
URRENT MONTH. JSR IDV ;BUMP.
;.DCC13 STA TDTC ;NEW MONTH. ;.
LDA #1. BNE DCC15 ;SET DAY T
O 1ST OF MONTH. ;.DCC14 JSR IDV ;
BUMP DAY. ;.DCC15 STA TDTC+1 ;NEW
DAY. ;. ;.;DECODE DATE FOR
DISPLAY.... ;.DCC16 LDA TDTC ;CUR
RENT MONTH. JSR BCDASC ;DECODE TO
ASCII. CMP #"0". BNE DCC17.
;. LDA #32 ;BLANK LEADING ZE
RO. ;.DCC17 STA TDTA ;SAVE TENS.
STX TDTA+1 ;SAVE UNITS. ;.
LDA TDTC+1 ;CURRENT DAY. JSR
BCDASC. STA TDTA+3. STX TDTA
+4. ;. LDA TDTC+2 ;CURRENT Y
EAR. JSR BCDASC. STA TDTA+6.
STX TDTA+7. ;. ;.;DEC
ODE TIME FOR DISPLAY.... ;.
LDA TODC ;HOURS. JSR BCDASC.
STA TODA. STX TODA+1. ;.
LDA TODC+1 ;MINUTES. JSR BCDAS
C. STA TODA+3. STX TODA+4.
;. LDA TODC+2 ;SECONDS.
JSR BCDASC. STA TODA+6. STX
TODA+7. ;. ;.;DISPLAY TIME
& DATE.... ;. LDA DFLG.
BNE DCC23 ;DISPLAY INHIBITED. ;.
;.;DISPLAY ON 40 COLUMN SCREEN...
. ;.DCC18 LDA CFLG ;DISPLAY COLOR
. LDY #7 ;OFFSET. ;.DCC19 S
TA VLRAM+32,Y ;COLOR. STA VLRAM+72
,Y. DEY. BPL DCC19 ;LOOP.
;. LDX RFLG ;NORMAL/REVERSE FL
AG. LDY #7 ;OFFSET. ;.DCC20
LDA TODA,Y ;FETCH TIME. ;.
CPX #0 ;TEST REVERSE FLAG. BEQ DCC
21 ;NOT REVERSED. ;. ORA #12
8 ;REVERSE. ;.DCC21 STA VCRAM+32,
Y. ;. LDA TDTA,Y ;FETCH DATE
. CPX #0. BEQ DCC22. ;
. ORA #128. ;.DCC22 STA VCR
AM+72,Y. ;. DEY. BPL D
CC20. ;. ;.;DISPLAY ON 80 CO
LUMN SCREEN.... ;. LDA #>SCR
AM1 ;ADDRESS FOR.... LDY #<SCRAM1
;TIME DISPLAY. JSR SETRAM ;SET UP
VDC RAM. ;. LDX #<TODA ;PETA
SCII TIME. LDY #>TODA. JSR D
TOD ;DISPLAY. ;. LDA #>SCRAM
2 ;ADDRESS FOR.... LDY #<SCRAM2 ;D
ATE DISPLAY. JSR SETRAM. ;.
LDX #<TDTA ;PETASCII DATE. L
DY #>TDTA. JSR DTOD ;DISPLAY.
;. ;.;SET 80 COLUMN ATTRIBUTES..
.. ;. LDA #>ATRAM1 ;ADDRESS
FOR.... LDY #<ATRAM1 ;TIME ATTRIBU
TE. JSR SETRAM. ;. JSR
ATRST ;SET UP ATTRIBUTES. ;.
LDA #>ATRAM2 ;ADDRESS FOR.... LD
Y #<ATRAM2 ;DATE ATTRIBUTE. JSR SE
TRAM. ;. JSR ATRST ;SET UP A
TTRIBUTES. ;. BIT MODE.
BPL DCC23 ;40 COLUMN MODE. ;.
JMP CRTI ;BYPASS REST OF IRQ.
;.DCC23 JMP (IRQA) ;CONTINUE IRQ.
;.;=================================.
;.;DISPLAY TIME OR DATE. ;.DT
OD STX DTOD02 ;SOURCE ADDRESS. S
TY DTOD02+1. ;. LDY #0 ;OFFS
ET. ;.DTOD01 .BYTE $B9 ;LDA LLHH,Y
OP-CODE. ;.DTOD02 *=*+2 ;SOURCE A
DDRESS. ;. BEQ ATRST3 ;END O
F STRING. ;. JSR WVDCM ;OUTP
UT TO 8563. INY. BNE DTOD01
;LOOP. ;.;------------------------
---------. ;.;SET UP DISPLAY ATTRI
BUTES. ;.ATRST LDY #8 ;COUNTER.
;.ATRST1 LDA CFLG ;GET COLOR.
LDX RFLG. BEQ ATRST2 ;NO REVERSE
DISPLAY. ;. ORA #%01000000 ;
REVERSE. ;.ATRST2 JSR WVDCM ;OUTPU
T TO 8563. DEY. BNE ATRST1 ;
LOOP. ;.ATRST3 RTS. ;.;-----
----------------------------. ;.;S
ET UP VDC RAM ADDRESS. ;.SETRAM LD
X #UPREG ;UPDATE REGISTER. JSR WVD
CR ;WRITE. INX. TYA ;SWAP HI
BYTE. JMP WVDCR. ;.;-------
--------------------------. ;.;CHR
OUT INTERCEPT & TRAP. ;.CRDY PHA
;SAVE PRINTING CHAR.. ;. BI
T MODE. BPL CRDY01 ;IN 40 COLUMNS.
;. LDA DFLTO ;OUTPUT DEVICE
. CMP #3. BNE CRDY01 ;NOT SC
REEN. ;. LDA DFLG ;TEST DISP
LAY FLAG. BNE CRDY01 ;DISPLAY INHI
BITED. ;. DEC DFLG ;BLOCK DI
SPLAY. ;.CRDY01 PLA ;RECOVER CHARA
CTER. ;. .BYTE 32 ;JSR OP-CO
DE. ;.BSOUTA .WORD CHROUT ;NORMAL
CHROUT. ;. BIT DFLG. B
PL CRDY02 ;NO RESET NEEDED. ;.
INC DFLG ;CLEAR FOR DISPLAY. ;.
CRDY02 RTS. ;.;-------------------
--------------. ;.;CONVERT BCD TO
PETASCII. ;.BCDASC JSR BCDBIN ;BCD
TO BINARY. ;. PHA ;SAVE TEN
S VALUE. ;. TXA ;UNITS VALUE
. ORA #48 ;CHANGE TO PETASCII.
TAX ;HOLD. ;. PLA ;FETCH
TENS. ORA #48. ;. RTS.
;.;------------------------------
---. ;.;BCD DIGIT TO 2 BINARY DIGI
TS. ;.BCDBIN PHA ;SAVE BCD VALUE.
;. AND #15 ;MASK TENS NYBBLE
. TAX ;UNITS IN .X REGISTER.
;. PLA ;FETCH BCD VALUE. ;.
LSR ;SHIFT TENS NYBBLE. LSR
. LSR . LSR . ;.
RTS. ;.;---------------------
------------. ;.;BCD DIGIT TO 1 BI
NARY DIGIT. ;.BCDOF JSR BCDBIN ;B
CD TO BINARY. ;. TAY ;TENS V
ALUE. TXA ;UNITS. ;. C
LC. ;.BCDOF1 DEY ;COUNTER. B
MI IDV01 ;FINISHED. ;. ADC #
10. BNE BCDOF1. ;.;---------
------------------------. ;.;INCRE
MENT DATE VALUE. ;.IDV SED ;DEC
IMAL MODE. ;. CLC. ADC
#1. ;. CLD ;BINARY MODE.
;.IDV01 RTS. ;.;-------------
--------------------. ;.;ALTERNATE
BASIC RESET. ;.ALRST JSR START ;
RESTART CLOCK. ;. LDA #0.
STA RPTFLG ;REPEAT OFF. ;.
.BYTE $4C ;JMP LLHH OP-CODE. ;.
ALRST1 *=*+2 ;RESET JUMP. ;.;-----
----------------------------. ;.;C
ALENDAR LOOKUP TABLE. ;.CLUT .BY
TE $31 ;JAN. .BYTE $28 ;FEB.
.BYTE $31 ;MAR. .BYTE $30 ;APR.
.BYTE $31 ;MAY. .BYTE $30 ;JU
N. .BYTE $31 ;JUL. .BYTE $31
;AUG. .BYTE $30 ;SEP. .BYTE
$31 ;OCT. .BYTE $30 ;NOV. .
BYTE $31 ;DEC. ;.;----------------
-----------------. ;.;PROGRAM STOR
AGE. ;.KEYSTR .ASC "CLK" .
.BYTE 0. ;.LFLG *=*+1 ;DISPLAY
LOCKOUT. ;.;======================
===========..END.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL