10 SYS36864 20 .OPT OO 30 *= 52000 100 CIA =$DD00 102 DDRA =CIA+2 104 DDRB =CIA+3 106 PRTA =CIA 108 PRTB =CIA+1 110 ERROUT =$A445 112 ERRPTR =$22 114 PNT =181 500 JMP ZEITLESEN 502 SEI:JSR 65418:CLI:RTS 600 ERRT .ASC "UNABLE TO ACCESS RT[195] 602 TRY BRK 604 WERT BRK 606 TIME .W[176] 0,0,0 1000 ZEITLESEN JSR RTCINIT 1002 JSR WART ; UHR ANHALTEN 1004 LDX #5:JSR [194]:[175] #3:STA TIME 1006 LDX #4:JSR [194]:STA TIME[170]1 1010 LDX #3:JSR [194]:STA TIME[170]2 1012 LDX #2:JSR [194]:STA TIME[170]3 1016 LDX #1:JSR [194]:STA TIME[170]4 1018 LDX #0:JSR [194]:STA TIME[170]5 1020 JSR WEITER ; UHR LAEUFT WEITER 1022 LDA CIA[170]14:[176]A #128:STA CIA[170]14:LDA CIA[170]15:[175] #127:STA CIA[170]15 1024 LDA TIME:ASL:ASL:ASL:ASL:[176]A TIME[170]1:BNE [168]0:LDA #$92:BNE SET1 1026 [168]0 CMP #$13:BCC SET1:SEC:SED:SBC #$12:CLD:[176]A #128 1028 SET1 STA CIA[170]$B 1030 LDA TIME[170]2:ASL:ASL:ASL:ASL:[176]A TIME[170]3:STA CIA[170]$A 1032 LDA TIME[170]4:ASL:ASL:ASL:ASL:[176]A TIME[170]5:STA CIA[170]$9 1034 LDA #0:STA CIA[170]$8 1036 SEI:LDA #[179]TIMIRQ:LDY #[177]TIMIRQ:STA $314:STY $315:CLI:RTS 1060 WART LDA #10:STA TRY 1061 W3 LDX #13:JSR [194]:[176]A #1:LDX #13:JSR [151] 1062 W2 LDX #13:JSR [194]:[175] #2:BEQ W1 1064 JSR WEITER 1066 DEC TRY:BNE W3 1068 W1 RTS 1070 WEITER LDX #13:JSR [194]:[175] #254:LDX #13:JMP [151] 1100 X [176]A #48:JMP $FFD2 2000 ; REGISTER X ANFAHREN 2002 REGX LDA PRTA:[176]A #4:STA PRTA:[175] #251:STA PRTA 2004 L1 LDA PRTB:[175] #16:BNE ERR[176] 2006 TXA:BEQ REACH 2008 LDA PRTB:[175] #223:STA PRTB:[176]A #32:STA PRTB 2010 DEX:BNE L1 2012 REACH RTS 2100 ; PLATINE NICHT ANGESCHLOSSEN 2104 ERR[176] LDA #[179]ERRT:STA ERRPTR:LDA #[177]ERRT:JMP ERROUT 2200 ; REGISTER X NACH A LESEN 2202 [194] JSR REGX 2204 LDA #224:STA DDRB 2206 LDA PRTB:[175] #127:STA PRTB 2208 LDA PRTB:[175] #15:PHA 2210 LDA PRTB:[176]A #192:STA PRTB 2212 PLA:RTS 2400 ; UHR INITIALISIEREN 2402 RTCINIT LDA DDRA:[176]A #4:STA DDRA:LDA #224:STA DDRB:STA PRTB 2410 LDA PRTA:[176]A #4:STA PRTA:[175] #251:STA PRTA 2412 LDX #16 2414 L2 LDA PRTB:[175] #16 2415 BNE ERR[176] 2416 LDA PRTB:[175] #223:STA PRTB:[176]A #32:STA PRTB 2418 DEX:BNE L2 2420 LDX #16 2422 L3 LDA PRTB:[175] #16:BEQ ERR[176] 2424 LDA PRTB:[175] #223:STA PRTB:[176]A #32:STA PRTB 2426 DEX:BNE L3 2428 LDA PRTB:[175] #16:BNE ERR[176]:RTS 2500 ; SCHREIBT A IN REGISTER X 2502 [151] [175] #15:STA WERT:JSR REGX 2504 LDA PRTB:[176]A #192:STA PRTB 2506 LDA #239:STA DDRB 2508 LDA PRTB:[175] #240:[176]A WERT:STA PRTB 2510 LDA PRTB:[175] #191:STA PRTB 2512 LDA PRTB:[176]A #192:STA PRTB 2514 LDA #224:STA DDRB 2516 RTS 3000 TIMIRQ LDA PNT:PHA:LDA PNT[170]1:PHA 3002 LDA #0:STA PNT:LDA 648:STA PNT[170]1:LDY #32 3004 LDA CIA[170]$B:CMP #$12:BEQ NIL:CMP #$80:BCC AM:[175] #127 3006 CMP #$12:BEQ AM:SED:CLC:ADC #$12:CLD:BNE AM 3008 NIL LDA #0 3010 AM SEC:JSR [153]:LDA CIA[170]$A:SEC:JSR [153]:LDA CIA[170]$9:CLC:JSR [153] 3012 LDA CIA[170]$8:PLA:STA PNT[170]1:PLA:STA PNT:JMP $EA31 3014 [153] PHP:PHA:[175] #$F0:LSR:LSR:LSR:LSR:[176]A #48:JSR PRI1 3016 PLA:[175] #15:[176]A #48:JSR PRI1:PLP:BCS DP:RTS 3018 DP LDA #58 3020 PRI1 STA (PNT),Y:LDA 646:STA 55296,Y:INY:RTS