notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
error checking for png
[picodrive.git]
/
cpu
/
DrZ80
/
drz80.s
diff --git
a/cpu/DrZ80/drz80.s
b/cpu/DrZ80/drz80.s
index
16f09af
..
ee14013
100644
(file)
--- a/
cpu/DrZ80/drz80.s
+++ b/
cpu/DrZ80/drz80.s
@@
-21,14
+21,10
@@
.endif
\r
\r
.if DRZ80_FOR_PICODRIVE
\r
.endif
\r
\r
.if DRZ80_FOR_PICODRIVE
\r
-.include "port_config.s"
\r
- .extern YM2612Read_
\r
-.if EXTERNAL_YM2612
\r
- .extern YM2612Read_940
\r
-.endif
\r
.extern PicoRead8
\r
.extern Pico
\r
.extern z80_write
\r
.extern PicoRead8
\r
.extern Pico
\r
.extern z80_write
\r
+ .extern ym2612_st
\r
.endif
\r
\r
DrZ80Ver: .long 0x0001
\r
.endif
\r
\r
DrZ80Ver: .long 0x0001
\r
@@
-111,37
+107,18
@@
DrZ80Ver: .long 0x0001
.if DRZ80_FOR_PICODRIVE
\r
\r
.macro YM2612Read_and_ret8
\r
.if DRZ80_FOR_PICODRIVE
\r
\r
.macro YM2612Read_and_ret8
\r
- stmfd sp!,{r3,r12,lr}
\r
-.if EXTERNAL_YM2612
\r
- ldr r1,=PicoOpt
\r
- ldr r1,[r1]
\r
- tst r1,#0x200
\r
- ldrne r2, =YM2612Read_940
\r
- ldreq r2, =YM2612Read_
\r
- mov lr,pc
\r
- bx r2
\r
-.else
\r
- bl YM2612Read_
\r
-.endif
\r
- ldmfd sp!,{r3,r12,pc}
\r
+ ldr r0, =ym2612_st
\r
+ ldr r0, [r0]
\r
+ ldrb r0, [r0, #0x11] ;@ ym2612_st->status
\r
+ bx lr
\r
.endm
\r
\r
.macro YM2612Read_and_ret16
\r
.endm
\r
\r
.macro YM2612Read_and_ret16
\r
- stmfd sp!,{r3,r12,lr}
\r
-.if EXTERNAL_YM2612
\r
- ldr r0,=PicoOpt
\r
- ldr r0,[r0]
\r
- tst r0,#0x200
\r
- ldrne r2, =YM2612Read_940
\r
- ldreq r2, =YM2612Read_
\r
- mov lr,pc
\r
- bx r2
\r
+ ldr r0, =ym2612_st
\r
+ ldr r0, [r0]
\r
+ ldrb r0, [r0, #0x11] ;@ ym2612_st->status
\r
orr r0,r0,r0,lsl #8
\r
orr r0,r0,r0,lsl #8
\r
-.else
\r
- bl YM2612Read_
\r
- orr r0,r0,r0,lsl #8
\r
-.endif
\r
- ldmfd sp!,{r3,r12,pc}
\r
+ bx lr
\r
.endm
\r
\r
pico_z80_read8: @ addr
\r
.endm
\r
\r
pico_z80_read8: @ addr
\r
@@
-214,13
+191,13
@@
pico_z80_read16: @ addr
add r0,r4,#1
\r
bl PicoRead8
\r
orr r0,r5,r0,lsl #8
\r
add r0,r4,#1
\r
bl PicoRead8
\r
orr r0,r5,r0,lsl #8
\r
-
ldmfd sp!,{r3-r5,r12,pc}
\r
+ ldmfd sp!,{r3-r5,r12,pc}
\r
1:
\r
mov r1,r0,lsr #13
\r
cmp r1,#2 @ YM2612 (0x4000-0x5fff)
\r
bne 0f
\r
and r0,r0,#3
\r
1:
\r
mov r1,r0,lsr #13
\r
cmp r1,#2 @ YM2612 (0x4000-0x5fff)
\r
bne 0f
\r
and r0,r0,#3
\r
-
YM2612Read_and_ret16
\r
+ YM2612Read_and_ret16
\r
0:
\r
cmp r0,#0x4000
\r
movge r0,#0xff
\r
0:
\r
cmp r0,#0x4000
\r
movge r0,#0xff
\r
@@
-1459,7
+1436,6
@@
DoInterrupt:
bne DoInterrupt_mode1
\r
tst r1,#2
\r
bne DoInterrupt_mode2
\r
bne DoInterrupt_mode1
\r
tst r1,#2
\r
bne DoInterrupt_mode2
\r
- b DoInterrupt_mode0
\r
\r
DoInterrupt_mode0:
\r
;@ get 3 byte vector
\r
\r
DoInterrupt_mode0:
\r
;@ get 3 byte vector
\r