1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-01 13:41:34 +00:00

Use changed EM decls

git-svn-id: svn://svn.cc65.org/cc65/trunk@2773 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2003-12-16 21:08:13 +00:00
parent fdb5ed5fa1
commit 5010b8be45
14 changed files with 88 additions and 89 deletions

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -225,7 +225,7 @@ setup: sta ptr1
; Get the page number from the struct and adjust it so that it may be used
; with the hardware. That is: lower 6 bits in tmp1, high bits in tmp2.
ldy #EM_COPY_PAGE+1
ldy #EM_COPY::PAGE+1
lda (ptr1),y
sta tmp2
dey
@ -240,16 +240,16 @@ setup: sta ptr1
; Get the buffer pointer into ptr2
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr1),y
sta ptr2
iny
lda (ptr1),y
sta ptr2+1
sta ptr2+1
; Get the count, calculate -(count-1) and store it into ptr3
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr1),y
eor #$FF
sta ptr3
@ -260,7 +260,7 @@ setup: sta ptr1
; Get the page offset into X and clear Y
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr1),y
tax
ldy #$00

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -165,16 +165,16 @@ COPYFROM:
sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
clc
adc #>BASE
sta ptr1+1 ; From
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
@ -184,7 +184,7 @@ COPYFROM:
lda #<ptr1
sta FETVEC
ldy #EM_COPY_COUNT+1
ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
beq @L2 ; Skip if no full pages
sta tmp1
@ -204,7 +204,7 @@ COPYFROM:
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1
@ -230,16 +230,16 @@ COPYFROM:
COPYTO: sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
clc
adc #>BASE
sta ptr1+1 ; To
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
@ -249,7 +249,7 @@ COPYTO: sta ptr3
lda #<ptr1
sta STAVEC
ldy #EM_COPY_COUNT+1
ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
beq @L2 ; Skip if no full pages
sta tmp1
@ -269,7 +269,7 @@ COPYTO: sta ptr3
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1

View File

@ -24,7 +24,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -252,7 +252,7 @@ setup: sta ptr1
; Get the page number from the struct and adjust it so that it may be used
; with the hardware. That is: lower 6 bits in tmp1, high bits in tmp2.
ldy #EM_COPY_PAGE+1
ldy #EM_COPY::PAGE+1
lda (ptr1),y
sta tmp2
dey
@ -261,7 +261,7 @@ setup: sta ptr1
; Get the buffer pointer into ptr2
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr1),y
sta ptr2
iny
@ -270,7 +270,7 @@ setup: sta ptr1
; Get the count, calculate -(count-1) and store it into ptr3
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr1),y
eor #$FF
sta ptr3
@ -281,7 +281,7 @@ setup: sta ptr1
; Get the page offset into X and clear Y
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr1),y
tax
ldy #$00

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.

View File

@ -21,7 +21,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -255,7 +255,7 @@ COPYFROM:
jsr setup
beq @L2 ; Skip if no full pages
; Copy full pages
; Copy full pages
@L1: jsr transferin
inc ptr1+1
@ -265,7 +265,7 @@ COPYFROM:
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1
@ -291,7 +291,7 @@ COPYTO:
jsr setup
beq @L2 ; Skip if no full pages
; Copy full pages
; Copy full pages
@L1: jsr transferout
inc ptr1+1
@ -301,7 +301,7 @@ COPYTO:
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1
@ -360,21 +360,21 @@ setup:
sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
sta ptr1+1 ; From
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; To
ldy #EM_COPY_COUNT+1
ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
sta tmp1
rts

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -183,22 +183,22 @@ COPYFROM:
sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
add #>BASE
sta ptr1+1 ; From
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; To
common: ldy #EM_COPY_COUNT+1
common: ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
beq @L2 ; Skip if no full pages
sta tmp1
@ -214,7 +214,7 @@ common: ldy #EM_COPY_COUNT+1
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
tax
@ -249,15 +249,15 @@ common: ldy #EM_COPY_COUNT+1
COPYTO: sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr2
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
add #>BASE
sta ptr2+1 ; To
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr1
iny

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -86,7 +86,7 @@ PAGECOUNT:
; The GeoRAM cartridge does not copy but actually map the window, so USE is
; identical to MAP.
USE = MAP
USE = MAP
; ------------------------------------------------------------------------
; MAP: Map the page in a/x into memory and return a pointer to the page in
@ -225,7 +225,7 @@ setup: sta ptr1
; Get the page number from the struct and adjust it so that it may be used
; with the hardware. That is: lower 6 bits in tmp1, high bits in tmp2.
ldy #EM_COPY_PAGE+1
ldy #EM_COPY::PAGE+1
lda (ptr1),y
sta tmp2
dey
@ -240,7 +240,7 @@ setup: sta ptr1
; Get the buffer pointer into ptr2
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr1),y
sta ptr2
iny
@ -249,7 +249,7 @@ setup: sta ptr1
; Get the count, calculate -(count-1) and store it into ptr3
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr1),y
eor #$FF
sta ptr3
@ -260,7 +260,7 @@ setup: sta ptr1
; Get the page offset into X and clear Y
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr1),y
tax
ldy #$00

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -162,7 +162,7 @@ loop: .repeat 8
; Done
done: rts
done: rts
; ------------------------------------------------------------------------
; COPYFROM: Copy from extended into linear memory. A pointer to a structure
@ -173,24 +173,24 @@ done: rts
COPYFROM:
sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
clc
adc #>BASE
sta ptr1+1 ; From
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; To
common: ldy #EM_COPY_COUNT+1
common: ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
beq @L2 ; Skip if no full pages
sta tmp1
@ -206,7 +206,7 @@ common: ldy #EM_COPY_COUNT+1
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
tax
@ -245,16 +245,16 @@ common: ldy #EM_COPY_COUNT+1
COPYTO: sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr2
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
clc
adc #>BASE
sta ptr2+1 ; To
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr1
iny

View File

@ -24,7 +24,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -252,7 +252,7 @@ setup: sta ptr1
; Get the page number from the struct and adjust it so that it may be used
; with the hardware. That is: lower 6 bits in tmp1, high bits in tmp2.
ldy #EM_COPY_PAGE+1
ldy #EM_COPY::PAGE+1
lda (ptr1),y
sta tmp2
dey
@ -261,7 +261,7 @@ setup: sta ptr1
; Get the buffer pointer into ptr2
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr1),y
sta ptr2
iny
@ -270,7 +270,7 @@ setup: sta ptr1
; Get the count, calculate -(count-1) and store it into ptr3
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr1),y
eor #$FF
sta ptr3
@ -281,7 +281,7 @@ setup: sta ptr1
; Get the page offset into X and clear Y
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr1),y
tax
ldy #$00

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -142,7 +142,7 @@ done: rts
; ------------------------------------------------------------------------
; USE: Tell the driver that the window is now associated with a given page.
USE: sta curpage
stx curpage+1 ; Remember the page
lda #<window

View File

@ -21,7 +21,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -265,7 +265,7 @@ COPYFROM:
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1
@ -301,7 +301,7 @@ COPYTO:
; Copy the remainder of the page
@L2: ldy #EM_COPY_COUNT
@L2: ldy #EM_COPY::COUNT
lda (ptr3),y ; Get bytes in last page
beq @L4
sta tmp1
@ -360,21 +360,21 @@ setup:
sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
sta ptr1+1 ; From
ldy #EM_COPY_BUF
ldy #EM_COPY::BUF
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; To
ldy #EM_COPY_COUNT+1
ldy #EM_COPY::COUNT+1
lda (ptr3),y ; Get number of pages
sta tmp1
rts

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -73,7 +73,7 @@ INSTALL:
lda #<EM_ERR_OK
ldx #>EM_ERR_OK
rts
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.
@ -263,23 +263,23 @@ COPYTO: jsr setup
setup: sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
add #OFFS
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
adc #$00
sta ptr1+1
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; Get count into ptr2
ldy #EM_COPY_BUF+1
ldy #EM_COPY::BUF+1
lda (ptr1),y
tax
dey

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $65, $6d, $64 ; "emd"
.byte $00 ; EM API version number
.byte EMD_API_VERSION ; EM API version number
; Jump table.
@ -73,7 +73,7 @@ INSTALL:
lda #<EM_ERR_OK
ldx #>EM_ERR_OK
rts
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.
@ -263,23 +263,23 @@ COPYTO: jsr setup
setup: sta ptr3
stx ptr3+1 ; Save the passed em_copy pointer
ldy #EM_COPY_OFFS
ldy #EM_COPY::OFFS
lda (ptr3),y
add #OFFS
sta ptr1
ldy #EM_COPY_PAGE
ldy #EM_COPY::PAGE
lda (ptr3),y
adc #$00
sta ptr1+1
ldy #EM_COPY_COUNT
ldy #EM_COPY::COUNT
lda (ptr3),y
sta ptr2
iny
lda (ptr3),y
sta ptr2+1 ; Get count into ptr2
ldy #EM_COPY_BUF+1
ldy #EM_COPY::BUF+1
lda (ptr1),y
tax
dey

View File

@ -33,8 +33,7 @@ emd_copyto: jmp return0
; Driver header signature
.rodata
emd_sig: .byte $65, $6d, $64, $00 ; "emd", version
emd_sig_len = * - emd_sig
emd_sig: .byte $65, $6d, $64, EMD_API_VERSION ; "emd", version
;----------------------------------------------------------------------------
@ -50,7 +49,7 @@ _em_install:
; Check the driver signature
ldy #emd_sig_len-1
ldy #.sizeof(emd_sig)-1
@L0: lda (ptr1),y
cmp emd_sig,y
bne inv_drv
@ -59,12 +58,12 @@ _em_install:
; Copy the jump vectors
ldy #EMD_HDR_JUMPTAB
ldy #EMD_HDR::JUMPTAB
ldx #0
@L1: inx ; Skip the JMP opcode
jsr copy ; Copy one byte
jsr copy ; Copy one byte
cpx #(EMD_HDR_JUMPCOUNT*3)
cpy #(EMD_HDR::JUMPTAB + .sizeof(EMD_HDR::JUMPTAB))
bne @L1
jmp emd_install ; Call driver install routine