mirror of https://git.sr.ht/~rabbits/oquonie
Read walls via MMU
This commit is contained in:
parent
053b6ccf37
commit
8d55d5f9d6
|
@ -8,7 +8,7 @@ Oquonie is larger than a standard 64kb rom, it makes use of the MMU. The current
|
|||
|
||||
```
|
||||
0000 ram
|
||||
0001 walls, 40x96 sprites
|
||||
0001 walls, 40x96 sprites(3c0)
|
||||
0002 floors, 64x40 sprites
|
||||
0003 steps, 64x40 sprites
|
||||
0004 characters, 64x80 sprites
|
||||
|
|
|
@ -70,26 +70,8 @@
|
|||
;on-mouse .Mouse/vector DEO2
|
||||
;on-control .Controller/vector DEO2
|
||||
|
||||
;cache/w pmem
|
||||
;&mmu-program #02 DEO2
|
||||
|
||||
BRK
|
||||
&space-txt 20 "bytes 20 "left. $1
|
||||
&mmu-program 01 0380 0001 0000 0000 =cache/w
|
||||
|
||||
@pmem ( addr* -- )
|
||||
|
||||
STH2
|
||||
#0000
|
||||
&l
|
||||
#00 OVR STH2kr ADD2 LDA phex/b
|
||||
DUP #0f AND #0f NEQ #16 MUL #0a ADD #18 DEO
|
||||
INC NEQk ,&l JCN
|
||||
POP2
|
||||
POP2r
|
||||
|
||||
JMP2r
|
||||
|
||||
|
||||
@meta 00
|
||||
( name ) "Oquonie 0a
|
||||
|
@ -204,10 +186,7 @@ JMP2r
|
|||
INC2 INC2 STH2
|
||||
#0006 #0000
|
||||
&lw
|
||||
DUP get-wall #00 EQU ?&skip-wall
|
||||
DUP2 STH2kr OVR2 #03c0 MUL2 ;cache/w ADD2 STH2
|
||||
ADD2 LDA STH2r #03c0 ;res/w fetch-asset
|
||||
&skip-wall
|
||||
DUP load-wall
|
||||
INC2 GTH2k ?&lw
|
||||
POP2 STH2 ADD2r
|
||||
( floors )
|
||||
|
@ -243,6 +222,18 @@ JMP2r
|
|||
|
||||
JMP2r
|
||||
|
||||
@load-wall ( id -- )
|
||||
|
||||
get-wall DUP #00 EQU ?&skip-wall
|
||||
OVR #00 SWP #03c0 MUL2 ;cache/w ADD2 ,&dst STR2
|
||||
#00 OVR #01 SUB #03c0 MUL2 ,&src STR2
|
||||
;&mmu #02 DEO2
|
||||
&skip-wall
|
||||
POP
|
||||
|
||||
JMP2r
|
||||
&mmu 01 0380 0001 &src $2 0000 &dst $2
|
||||
|
||||
@load-event ( event* -- )
|
||||
|
||||
INC2k LDA2 #0004 ADD2 LDA2 JSR2
|
||||
|
|
Loading…
Reference in New Issue