From 7e402d8202af409a0ea8f3f2676a2e6f501af05b Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Fri, 1 Feb 2008 02:02:38 +0000 Subject: H10-20GB: Commit the first patch in FS#8533 to fix the mpegplayer display problem where only half the data was reaching the display on some players. Two individuals report that it corrects it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16193 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/iriver/h10/lcd-as-h10.S | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/firmware/target/arm/iriver/h10/lcd-as-h10.S b/firmware/target/arm/iriver/h10/lcd-as-h10.S index f4f7b9398e..8c8972549a 100644 --- a/firmware/target/arm/iriver/h10/lcd-as-h10.S +++ b/firmware/target/arm/iriver/h10/lcd-as-h10.S @@ -115,7 +115,8 @@ lcd_write_yuv420_lines: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*74 add r12, r7, r7, asl #2 @ @@ -151,7 +152,8 @@ lcd_write_yuv420_lines: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*74 add r12, r7, r7, asl #2 @ @@ -187,7 +189,8 @@ lcd_write_yuv420_lines: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*74 add r12, r7, r7, asl #2 @ @@ -221,7 +224,8 @@ lcd_write_yuv420_lines: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ subs r1, r1, #2 @ subtract block from width bgt 10b @ loop line @ @@ -359,7 +363,8 @@ lcd_write_yuv420_lines_odither: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*149 add r12, r7, r7, asl #2 @ @@ -412,7 +417,8 @@ lcd_write_yuv420_lines_odither: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*149 add r12, r7, r7, asl #2 @ @@ -467,7 +473,8 @@ lcd_write_yuv420_lines_odither: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ sub r7, r12, #16 @ r7 = Y = (Y' - 16)*149 add r12, r7, r7, asl #2 @ @@ -518,7 +525,8 @@ lcd_write_yuv420_lines_odither: ldr r3, [r0] @ tst r3, #LCD2_BUSY_MASK @ bne 20b @ - stmia r0, { r7, r11 } @ + str r7, [r0] @ + str r11, [r0] @ @ subs r1, r1, #2 @ subtract block from width bgt 10b @ loop line @ -- cgit v1.2.3