mirror of
https://github.com/mach-kernel/mrbuffer.git
synced 2025-01-04 12:30:39 +00:00
figured out that merlin has long modes which means i dont have to do crazy things to toggle softswitches anymore
This commit is contained in:
parent
f338736ecc
commit
daf4eb3dc0
202
src/main.S
202
src/main.S
@ -9,83 +9,47 @@
|
|||||||
|
|
||||||
phk
|
phk
|
||||||
plb
|
plb
|
||||||
;;;;;
|
|
||||||
|
|
||||||
; we're going to need this
|
; half bank for accumulator, you don't want to toggle them on then back off, right?
|
||||||
entrydp dw
|
|
||||||
|
|
||||||
phd
|
|
||||||
pla
|
|
||||||
sta entrydp
|
|
||||||
|
|
||||||
;;;;;;;;;
|
|
||||||
|
|
||||||
sep #$30 ; a, m, x half bank
|
|
||||||
|
|
||||||
lda #$00
|
|
||||||
pha
|
|
||||||
plb
|
|
||||||
|
|
||||||
; slide direct page up
|
|
||||||
|
|
||||||
lda #$0000
|
|
||||||
pha
|
|
||||||
pld
|
|
||||||
|
|
||||||
|
sep #$30
|
||||||
|
|
||||||
; toggle the softswitches; they don't take any values. some are only triggered
|
; toggle the softswitches; they don't take any values. some are only triggered
|
||||||
; by writes, $C054 can be triggered by a read
|
; by writes, $C054 can be triggered by a read
|
||||||
|
stal $00C000 ; disable 80 column store?
|
||||||
|
|
||||||
sta $C000 ; disable 80 column store?
|
stal $00C00C ; disable 80 column hardware?!
|
||||||
|
stal $00C050 ; set standard apple ii gfx mode
|
||||||
sta $C00C ; disable 80 column hardware?!
|
stal $00C051 ; select text mode only. "only"?
|
||||||
sta $C050 ; set standard apple ii gfx mode
|
ldal $00C054 ; select text page 1 (there are 2)
|
||||||
sta $C051 ; select text mode only. "only"?
|
ldal $00C056 ; select "low res" graphics
|
||||||
lda $C054 ; select text page 1 (there are 2)
|
|
||||||
lda $C056 ; select "low res" graphics
|
|
||||||
|
|
||||||
; ok, we are done toggling switches, let's go make a string
|
; ok, we are done toggling switches, let's go make a string
|
||||||
|
|
||||||
rep #$30
|
rep #$30
|
||||||
|
|
||||||
phk
|
phk
|
||||||
plb
|
|
||||||
lda entrydp
|
|
||||||
pha
|
|
||||||
pld
|
|
||||||
|
|
||||||
; the first byte of the str is its length, we'll use that for cmp
|
|
||||||
ldx #1
|
|
||||||
|
|
||||||
atxt str "O SHIT"
|
|
||||||
loopy nop
|
|
||||||
clc
|
|
||||||
cpx #4 ; compare with length, bail if too long
|
|
||||||
bcs outbrk
|
|
||||||
ldy atxt,x
|
|
||||||
|
|
||||||
lda #$00
|
|
||||||
pha
|
|
||||||
plb
|
|
||||||
|
|
||||||
lda #$0000
|
|
||||||
pha
|
|
||||||
pld
|
|
||||||
|
|
||||||
sty $04,x
|
|
||||||
|
|
||||||
phk
|
|
||||||
plb
|
|
||||||
lda entrydp
|
|
||||||
pha
|
|
||||||
pld
|
pld
|
||||||
|
|
||||||
|
hithere strl "hello world"
|
||||||
|
ldx #2
|
||||||
|
:loopy nop
|
||||||
|
lda hithere,x
|
||||||
|
stal $000400
|
||||||
|
cpx hithere
|
||||||
inx
|
inx
|
||||||
|
bcs outbrk
|
||||||
|
jmp :loopy
|
||||||
|
|
||||||
jmp loopy
|
outbrk brk
|
||||||
|
|
||||||
outbrk lda #37
|
; y u no work
|
||||||
brk
|
* ldx hithere+2
|
||||||
|
* ldy #$0400
|
||||||
|
* lda hithere
|
||||||
|
|
||||||
|
* mvp #$02, #$00
|
||||||
|
|
||||||
|
* brk
|
||||||
|
|
||||||
* lda #"H"
|
* lda #"H"
|
||||||
* sta $0400
|
* sta $0400
|
||||||
@ -310,6 +274,122 @@ QP adrl $0000
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user