notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
memhandlers slightly improved
[picodrive.git]
/
cpu
/
DrZ80
/
drz80.s
diff --git
a/cpu/DrZ80/drz80.s
b/cpu/DrZ80/drz80.s
index
eba8b95
..
53f4c98
100644
(file)
--- a/
cpu/DrZ80/drz80.s
+++ b/
cpu/DrZ80/drz80.s
@@
-111,40
+111,37
@@
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
+ stmfd sp!,{r3,r12,lr}
\r
.if EXTERNAL_YM2612
\r
ldr r1,=PicoOpt
\r
ldr r1,[r1]
\r
tst r1,#0x200
\r
.if EXTERNAL_YM2612
\r
ldr r1,=PicoOpt
\r
ldr r1,[r1]
\r
tst r1,#0x200
\r
- bne 10f
\r
- bl YM2612Read_
\r
- ldmfd sp!,{r3,r12,pc}
\r
-10:
\r
- bl YM2612Read_940
\r
+ ldrne r2, =YM2612Read_940
\r
+ ldreq r2, =YM2612Read_
\r
+ mov lr,pc
\r
+ bx r2
\r
.else
\r
bl YM2612Read_
\r
.endif
\r
.else
\r
bl YM2612Read_
\r
.endif
\r
-
ldmfd sp!,{r3,r12,pc}
\r
+ ldmfd sp!,{r3,r12,pc}
\r
.endm
\r
\r
.macro YM2612Read_and_ret16
\r
.endm
\r
\r
.macro YM2612Read_and_ret16
\r
-
stmfd sp!,{r3,r12,lr}
\r
+ stmfd sp!,{r3,r12,lr}
\r
.if EXTERNAL_YM2612
\r
ldr r0,=PicoOpt
\r
ldr r0,[r0]
\r
tst r0,#0x200
\r
.if EXTERNAL_YM2612
\r
ldr r0,=PicoOpt
\r
ldr r0,[r0]
\r
tst r0,#0x200
\r
- bne 10f
\r
- bl YM2612Read_
\r
- orr r0,r0,r0,lsl #8
\r
- ldmfd sp!,{r3,r12,pc}
\r
-10:
\r
- bl YM2612Read_940
\r
+ ldrne r2, =YM2612Read_940
\r
+ ldreq r2, =YM2612Read_
\r
+ mov lr,pc
\r
+ bx r2
\r
orr r0,r0,r0,lsl #8
\r
.else
\r
bl YM2612Read_
\r
orr r0,r0,r0,lsl #8
\r
.endif
\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
+ ldmfd sp!,{r3,r12,pc}
\r
.endm
\r
\r
pico_z80_read8: @ addr
\r
.endm
\r
\r
pico_z80_read8: @ addr
\r
@@
-173,7
+170,7
@@
pico_z80_read8: @ addr
cmp r1,#2 @ YM2612 (0x4000-0x5fff)
\r
bne 0f
\r
and r0,r0,#3
\r
cmp r1,#2 @ YM2612 (0x4000-0x5fff)
\r
bne 0f
\r
and r0,r0,#3
\r
-
YM2612Read_and_ret8
\r
+ YM2612Read_and_ret8
\r
0:
\r
cmp r0,#0x4000
\r
movge r0,#0xff
\r
0:
\r
cmp r0,#0x4000
\r
movge r0,#0xff
\r