; da65 V2.18 - Git ece63f0 ; Created: 2023-10-03 10:18:14 ; Input file: bitsy.bye ; Page: 1 OPEN_BUFFER := $0280 L2000 := $2000 L1400 := $1400 PRODOS_MLI := $BF00 DEVNUM := $BF30 BITMAP := $BF58 DRVSM2 := $C082 INIT := $FB2F BASCALC := $FBC1 BELL1 := $FBDD VTAB := $FC22 HOME := $FC58 RDKEY := $FD0C SETKBD := $FE89 SETVID := $FE93 CLR80VID := $C00C CLR80COL := $C000 NEWVIDEO := $C029 .macpack apple2 .setcpu "6502" .org $1000 cld lda DRVSM2 ; turn all drive phases off cli sta CLR80VID sta CLR80COL jsr SETVID jsr SETKBD sta $04FB jsr INIT jsr HOME ldx #$DF lda #$CF L101E: sta BITMAP-$df,x ; $BF58, aka BITMAP lda L135F -$df,x ; $134F sta $7A,x ; $0159 lda #$00 txs inx bne L101E .setcpu "65816" ; this is a NOP on 65x02 rep #$02 ; reset processor status bits .setcpu "6502" beq L1034 ; branch-always on 6502 inx ; only //gs stx NEWVIDEO ; only //gs L1034: inc BITMAP+$17 ; bitmap of low 48k of memory ldx #(L1356-L12FE-1) ; $57 L1039: lda L12FE+1,x ; $1356 bmi L1045 jsr BASCALC ; row in a -> screen address in ($28) ldy L1300,x .byte $2C ; mask next ... L1045: sta ($28),y ; store directly to $(SCREEN) from BASCALC dey dex bne L1039 L104B: sta $0480,y sta ($28),y dey bpl L104B ; done drawing screen lda DEVNUM ; get current active slot (DSSS/0000) lsr a ; for 7, that's 0111/0000 lsr a lsr a ; now 0000/1110 tax inx cmp #$10 ; legit slot? bcc L1060 L105F: dex L1060: jsr OPEN_PREFIX beq L105F L1065: lda #>L1400 sta $7A+1 sta $58+1 ldy #