@Acid2000, I have disassembled the
SX1 and
SX10 dumps. It seems the signature for RefreshPhysicalScreen is determined. Have not decided what to make of it. It seems to me some code is called no matter what in the structure. ???
;
SX1 200H "official" RefreshPhysicalScreen (build 885)
0xff9fa6a8L: e92d4010 stmdb sp!,{r4,lr}
0xff9fa6acL: eb0000cb bl #0x1ea9e0
0xff9fa6b0L: e3100001 tst r0,#1
0xff9fa6b4L: 18bd8010 ldmneia sp!,{r4,pc}
0xff9fa6b8L: e59f414c ldr r4,#0x1ea80c ; = #0xcabc
0xff9fa6bcL: e5940034 ldr r0,[r4,#0x34]
0xff9fa6c0L: e2800001 add r0,r0,#1 ; note add here
0xff9fa6c4L: e5840034 str r0,[r4,#0x34]
0xff9fa6c8L: e5940030 ldr r0,[r4,#0x30]
0xff9fa6ccL: e3500000 cmp r0,#0
0xff9fa6d0L: 1a000005 bne #0x1ea6ec
0xff9fa6d4L: e28f1f4d add r1,pc,#0x134
0xff9fa6d8L: e3a00060 mov r0,#0x60
0xff9fa6dcL: ebfa01e5 bl #0x6ae78
0xff9fa6e0L: e3a00001 mov r0,#1
0xff9fa6e4L: e5840030 str r0,[r4,#0x30]
0xff9fa6e8L: ebfff09c bl #0x1e6960
0xff9fa6ecL: e5940018 ldr r0,[r4,#0x18]
0xff9fa6f0L: ebf8b4e4 bl #0x17a88
0xff9fa6f4L: e3a00000 mov r0,#0
0xff9fa6f8L: e8bd8010 ldmia sp!,{r4,pc}
; Another possibility for
SX1 RefreshPhysicalScreen
0xff9fa6fcL: e92d407f stmdb sp!,{r0-r6,lr}
0xff9fa700L: eb0000b6 bl #0x1ea9e0
0xff9fa704L: e3100001 tst r0,#1
0xff9fa708L: 1a000009 bne #0x1ea734
0xff9fa70cL: e59f40f8 ldr r4,#0x1ea80c ; = #0xcabc
0xff9fa710L: e3a05000 mov r5,#0
0xff9fa714L: e5940034 ldr r0,[r4,#0x34]
0xff9fa718L: e2400001 sub r0,r0,#1 ; note sub here
0xff9fa71cL: e3500000 cmp r0,#0
0xff9fa720L: e5840034 str r0,[r4,#0x34]
0xff9fa724L: 0a000003 beq #0x1ea738
0xff9fa728L: b5845034 strlt r5,[r4,#0x34]
0xff9fa72cL: e5940018 ldr r0,[r4,#0x18]
0xff9fa730L: ebf8b4d4 bl #0x17a88
0xff9fa734L: e8bd807f ldmia sp!,{r0-r6,pc}
;
SX10 102B RefreshPhysicalScreen
0xff9df0e0L: e92d407f stmdb sp!,{r0-r6,lr}
0xff9df0e4L: eb0000a8 bl #0x1cf38c
0xff9df0e8L: e3100001 tst r0,#1
0xff9df0ecL: 1a000009 bne #0x1cf118
0xff9df0f0L: e59f4160 ldr r4,#0x1cf258 ; = #0xbe84
0xff9df0f4L: e3a05000 mov r5,#0
0xff9df0f8L: e5940034 ldr r0,[r4,#0x34]
0xff9df0fcL: e2400001 sub r0,r0,#1 ; note sub here
0xff9df100L: e3500000 cmp r0,#0
0xff9df104L: e5840034 str r0,[r4,#0x34]
0xff9df108L: 0a000003 beq #0x1cf11c
0xff9df10cL: b5845034 strlt r5,[r4,#0x34]
0xff9df110L: e5940018 ldr r0,[r4,#0x18]
0xff9df114L: ebf92233 bl #0x179e8
0xff9df118L: e8bd807f ldmia sp!,{r0-r6,pc}