X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=Pico%2Fcd%2FMemory.s;h=9aba56d173ab96d0d16ae0581b956dca37e2b6d6;hb=9761a7d0d41ad429d53c64ff35fe061c38092dbf;hp=7b19e614e63d0a92c1087023422668cc808192c3;hpb=e5503e2f4fe1c7ccc46c493a1596fb0e416f678e;p=picodrive.git diff --git a/Pico/cd/Memory.s b/Pico/cd/Memory.s index 7b19e61..9aba56d 100644 --- a/Pico/cd/Memory.s +++ b/Pico/cd/Memory.s @@ -126,9 +126,9 @@ m_s68k_decode_write_table: .extern z80Read8 .extern OtherRead16 .extern PicoVideoRead +.extern PicoVideoRead8 .extern Read_CDC_Host .extern m68k_reg_write8 -.extern OtherWrite8 .extern OtherWrite16 .extern gfx_cd_read .extern s68k_reg_read16 @@ -136,7 +136,7 @@ m_s68k_decode_write_table: .extern gfx_cd_write16 .extern s68k_reg_write8 .extern s68k_poll_adclk -.extern PicoCpuS68k +.extern PicoCpuMS68k .extern s68k_poll_detect .extern SN76496Write .extern m_m68k_read8_misc @@ -381,7 +381,7 @@ PicoWriteS68k32: @ u32 a, u32 d add r2, r2, #0x110000 add r2, r2, #0x002200 .if \is_read - ldrb r0, [r2, #0x18] + ldrb r0, [r2, #0x18] @ Pico_mcd->m.bcram_reg .else strb r1, [r2, #0x18] .endif @@ -612,13 +612,7 @@ m_m68k_read8_vdp: tst r0, #0x70000 tsteq r0, #0x000e0 bxne lr @ invalid read - stmfd sp!,{r0,lr} - bic r0, r0, #1 - bl PicoVideoRead @ TODO: implement it in asm - ldmfd sp!,{r1,lr} - tst r1, #1 - moveq r0, r0, lsr #8 - bx lr + b PicoVideoRead8 m_m68k_read8_ram: @@ -1259,7 +1253,7 @@ m_m68k_write16_regs_spec: @ special case and r2, r2, #0xfe cmp r2, #0x0e bxne lr - ldr r0, =PicoCpuS68k + ldr r0, =PicoCpuCS68k str r1, [r0, #0x58] @ push s68k out of stopped state str r1, [r3] bx lr @@ -1450,7 +1444,7 @@ m_m68k_write32_regs_comm: @ Handle the 0x10-0x1f range strneh r1, [r2, #2] cmp r0, #0x10 bxlt lr - ldr r0, =PicoCpuS68k @ remove poll detected state for s68k + ldr r0, =PicoCpuCS68k @ remove poll detected state for s68k mov r1, #0 str r1, [r0, #0x58] str r1, [r3]