First public commit.
This commit is contained in:
parent
2a48f52979
commit
4bac9d83ed
288 changed files with 18417 additions and 1076 deletions
44
lenser/apple/viewer/awyt.i
Normal file
44
lenser/apple/viewer/awyt.i
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
; Shared display-duration epilogue for the Apple II viewers (HGR already on).
|
||||
; WAITMODE 0 forever, 1 until a key, 2 about WAITSECS seconds.
|
||||
; key and seconds exit to Applesoft BASIC ($E000 cold start), a real prompt with
|
||||
; no DOS needed. The II and II+ have no timer, so seconds is a calibrated delay
|
||||
; loop near 1 MHz. WAITSECS is clamped to 255 by the assembler.
|
||||
|
||||
#if WAITMODE == 0
|
||||
awhang:
|
||||
jmp awhang
|
||||
#endif
|
||||
|
||||
#if WAITMODE == 1
|
||||
awhang:
|
||||
lda $c000 ; keyboard; bit7 set = a key is down
|
||||
bpl awhang
|
||||
bit $c010 ; clear strobe
|
||||
lda $c051 ; switch to text so the BASIC prompt is visible
|
||||
lda $c054 ; page 1
|
||||
jmp $e000 ; Applesoft cold start
|
||||
#endif
|
||||
|
||||
#if WAITMODE == 2
|
||||
lda #WAITSECS
|
||||
sta $fd ; seconds remaining
|
||||
aw_o:
|
||||
lda #$03 ; ~1 second = 3 * (256*256 inner) at ~1 MHz
|
||||
sta $fc
|
||||
aw_m:
|
||||
ldx #$00
|
||||
aw_x:
|
||||
ldy #$00
|
||||
aw_y:
|
||||
dey
|
||||
bne aw_y
|
||||
dex
|
||||
bne aw_x
|
||||
dec $fc
|
||||
bne aw_m
|
||||
dec $fd
|
||||
bne aw_o
|
||||
lda $c051 ; switch to text so the BASIC prompt is visible
|
||||
lda $c054 ; page 1
|
||||
jmp $e000 ; Applesoft cold start
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue