Routines |
Prev: 38354 | Up: Map | Next: 38453 |
Used by the routine at AliasInterruptRedirect.
|
||||
InterruptRoutine | 38381 | PUSH AF | Stash AF, BC, DE, HL and IX on the stack. | |
38382 | PUSH BC | |||
38383 | PUSH DE | |||
38384 | PUSH HL | |||
38385 | PUSH IX | |||
38387 | CALL 52215 | Call 52215. | ||
38390 | LD A,(39723) | Jump to GetControls if *39723 is not zero. | ||
38393 | AND A | |||
38394 | JR Z,GetControls | |||
38396 | LD HL,39605 | HL=39605. | ||
38399 | DEC (HL) | Decrease *HL by one. | ||
38400 | JR NZ,GetControls | Jump to GetControls if *HL is not zero. | ||
38402 | LD (HL),50 | Write "2" to *HL. | ||
Handle the units digit of AroundTheClock_Timer.
|
||||
38404 | LD HL,41869 | HL=41869 (2nd digit of AroundTheClock_Timer). | ||
38407 | DEC (HL) | Decrease *HL by one. | ||
Has 41869 just ticked down from a "0"?
|
||||
38408 | LD A,(HL) | Jump to InterruptDrivenTimer if *HL is not equal to 47 ("0" minus one). | ||
38409 | CP 47 | |||
38411 | JR NZ,InterruptDrivenTimer | |||
Replace the unit digit with a "9".
|
||||
38413 | LD (HL),57 | Write "9" to *HL. | ||
Handle the tens digit of AroundTheClock_Timer.
|
||||
38415 | LD HL,41868 | HL=AroundTheClock_Timer. | ||
38418 | DEC (HL) | Decrease *HL by one. | ||
Has AroundTheClock_Timer just ticked down from a "0"?
|
||||
38419 | LD A,(HL) | Jump to InterruptDrivenTimer if *L is not equal to 47 ("0" minus one). | ||
38420 | CP 47 | |||
38422 | JR NZ,InterruptDrivenTimer | |||
This signifies that the time is now up!
|
||||
38424 | LD A,1 | Write 1 to *39722. | ||
38426 | LD (39722),A | |||
38429 | DEC A | Write 0 to *39723. | ||
38430 | LD (39723),A | |||
38433 | JR GetControls | Jump to GetControls. | ||
Print the "Around The Clock" timer.
|
||||
InterruptDrivenTimer | 38435 | CALL Messaging_AroundTheClock_Timer | Call Messaging_AroundTheClock_Timer. | |
GetControls | 38438 | CALL InterruptDrivenControls | Call InterruptDrivenControls. | |
38441 | LD (63521),A | Write A to *ControlByte. | ||
38444 | POP IX | Restore IX, HL, DE, BC and AF from the stack. | ||
38446 | POP HL | |||
38447 | POP DE | |||
38448 | POP BC | |||
38449 | POP AF | |||
38450 | EI | Enable interrupts. | ||
38451 | RETI | Return from the interrupt routine. |
Prev: 38354 | Up: Map | Next: 38453 |