From 092c340a2062fa98b7387fc5fd63578ddae7d0b6 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Wed, 15 Jul 2020 19:40:55 -0400 Subject: [1/4] Remove SH support and all archos targets This removes all code specific to SH targets Change-Id: I7980523785d2596e65c06430f4638eec74a06061 --- apps/plugins/lib/SOURCES | 2 - apps/plugins/lib/grey_core.c | 30 +------- apps/plugins/lib/grey_draw.c | 3 +- apps/plugins/lib/grey_sh.S | 137 --------------------------------- apps/plugins/lib/helper.c | 14 ---- apps/plugins/lib/pluginlib_actions.c | 39 ---------- apps/plugins/lib/xlcd_scroll.c | 143 +---------------------------------- 7 files changed, 4 insertions(+), 364 deletions(-) delete mode 100644 apps/plugins/lib/grey_sh.S (limited to 'apps/plugins/lib') diff --git a/apps/plugins/lib/SOURCES b/apps/plugins/lib/SOURCES index 1149f35bac..82b9fba4a5 100644 --- a/apps/plugins/lib/SOURCES +++ b/apps/plugins/lib/SOURCES @@ -21,8 +21,6 @@ grey_scroll.c #ifdef CPU_COLDFIRE grey_coldfire.S -#elif CONFIG_CPU == SH7034 -grey_sh.S #endif #endif /* HAVE_LCD_BITMAP && LCD_DEPTH < 4 */ diff --git a/apps/plugins/lib/grey_core.c b/apps/plugins/lib/grey_core.c index bb6823522d..55d0684103 100644 --- a/apps/plugins/lib/grey_core.c +++ b/apps/plugins/lib/grey_core.c @@ -36,35 +36,7 @@ #ifndef SIMULATOR -#if defined ARCHOS_RECORDER /* verified */ \ - || defined ARCHOS_FMRECORDER /* should be identical */ \ - || defined ARCHOS_RECORDERV2 /* should be identical */ \ - || defined ARCHOS_ONDIOFM /* verified */ \ - || defined ARCHOS_ONDIOSP /* verified */ -/* Average measurements of a Recorder v1, an Ondio FM, a backlight-modded - * Ondio FM, and an Ondio SP. */ -static const unsigned char lcdlinear[256] = { - 5, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 29, 31, 33, 35, - 37, 39, 40, 42, 43, 45, 46, 48, 49, 50, 51, 53, 54, 55, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 68, 69, 70, 71, 71, 72, - 73, 74, 74, 75, 76, 77, 77, 78, 79, 79, 80, 80, 81, 81, 82, 82, - 83, 84, 84, 85, 86, 86, 87, 87, 88, 88, 89, 89, 90, 90, 91, 91, - 92, 92, 93, 93, 94, 94, 95, 95, 96, 96, 97, 98, 98, 99, 100, 100, -101, 101, 102, 103, 103, 104, 105, 105, 106, 106, 107, 107, 108, 108, 109, 109, -110, 110, 111, 112, 112, 113, 114, 114, 115, 115, 116, 117, 117, 118, 119, 119, -120, 120, 121, 122, 123, 123, 124, 125, 126, 126, 127, 128, 129, 129, 130, 131, -132, 132, 133, 134, 135, 135, 136, 137, 138, 138, 139, 140, 140, 141, 141, 142, -143, 144, 145, 146, 147, 147, 148, 149, 150, 151, 152, 153, 154, 154, 155, 156, -157, 158, 159, 160, 161, 161, 162, 163, 164, 165, 166, 167, 168, 168, 169, 170, -171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 184, 185, 186, 187, -188, 189, 191, 192, 194, 195, 197, 198, 199, 200, 202, 203, 204, 205, 207, 208, -209, 210, 212, 213, 215, 216, 218, 219, 220, 221, 222, 223, 225, 226, 227, 228, -229, 230, 232, 233, 234, 235, 237, 238, 239, 240, 242, 243, 244, 246, 247, 248 -}; -/* The actual LCD scanrate varies a lot with temperature on these targets */ -#define LCD_SCANRATE 67 /* Hz */ - -#elif defined IAUDIO_M3 /* verified */ +#if defined IAUDIO_M3 /* verified */ /* Average measurements of 2 iAudio remotes connected to an M3. */ static const unsigned char lcdlinear[256] = { 5, 9, 13, 17, 21, 26, 30, 34, 38, 42, 46, 50, 54, 58, 62, 66, diff --git a/apps/plugins/lib/grey_draw.c b/apps/plugins/lib/grey_draw.c index 64dabc2fb3..298ffbe16e 100644 --- a/apps/plugins/lib/grey_draw.c +++ b/apps/plugins/lib/grey_draw.c @@ -758,8 +758,7 @@ void grey_ub_gray_bitmap_part(const unsigned char *src, int src_x, int src_y, + (~yc & _GREY_BMASK); #endif /* LCD_PIXELFORMAT */ -#if ((LCD_PIXELFORMAT == VERTICAL_PACKING) && (LCD_DEPTH == 1) && (CONFIG_CPU == SH7034)) \ - || ((LCD_PIXELFORMAT == VERTICAL_PACKING) && (LCD_DEPTH == 2) && defined(CPU_COLDFIRE)) \ +#if ((LCD_PIXELFORMAT == VERTICAL_PACKING) && (LCD_DEPTH == 2) && defined(CPU_COLDFIRE)) \ || ((LCD_PIXELFORMAT == VERTICAL_INTERLEAVED) && defined(CPU_COLDFIRE)) _grey_line1(width, dst + idx, src, _grey_info.gvalue); #else diff --git a/apps/plugins/lib/grey_sh.S b/apps/plugins/lib/grey_sh.S deleted file mode 100644 index 5714f95f8c..0000000000 --- a/apps/plugins/lib/grey_sh.S +++ /dev/null @@ -1,137 +0,0 @@ -/*************************************************************************** -* __________ __ ___. -* Open \______ \ ____ ____ | | _\_ |__ _______ ___ -* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / -* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < -* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ -* \/ \/ \/ \/ \/ -* $Id$ -* -* New greyscale framework -* SH1 assembler routines -* -* This is a generic framework to display 129 shades of grey on low-depth -* bitmap LCDs (Archos b&w, Iriver & Ipod 4-grey) within plugins. -* -* Copyright (C) 2008 Jens Arnold -* -* This program is free software; you can redistribute it and/or -* modify it under the terms of the GNU General Public License -* as published by the Free Software Foundation; either version 2 -* of the License, or (at your option) any later version. -* -* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY -* KIND, either express or implied. -* -****************************************************************************/ - -#include "config.h" -/* Plugins should not normally do this, but we need to check a macro, and - * plugin.h would confuse the assembler. */ - - .text - .global __grey_line1 - .type __grey_line1, @function - -#if (LCD_PIXELFORMAT == VERTICAL_PACKING) && (LCD_DEPTH == 1) - -/**************************************************************************** - * void _grey_line1(int width, r4 - * unsigned char *dst, r5 - * const unsigned char *src, r6 - * const unsigned char *lut); r7 - */ - -__grey_line1: - mov #1, r0 - tst r0, r6 - bt .p1_h_end - - mov.b @r6+, r0 - extu.b r0, r0 - mov.b @(r0, r7), r0 - add #-1, r4 - mov.b r0, @r5 - add #8, r5 -.p1_h_end: - - mov #2, r0 - cmp/hs r0, r4 - bf .p2_t_end - tst r0, r6 - bt .p2_h_end - - mov.w @r6+, r1 - extu.b r1, r0 - mov.b @(r0, r7), r0 - shlr8 r1 - mov.b r0, @(8, r5) - extu.b r1, r0 - mov.b @(r0, r7), r0 - add #-2, r4 - mov.b r0, @r5 - add #16, r5 -.p2_h_end: - - add #-4, r4 - cmp/pz r4 - bf .p4_end - - add r6, r4 - -.p4_loop: - mov.l @r6+, r1 - swap.w r1, r2 - extu.b r2, r0 - mov.b @(r0, r7), r0 - shlr8 r2 - mov.b r0, @(8, r5) - extu.b r2, r0 - mov.b @(r0, r7), r2 - extu.b r1, r0 - mov.b r2, @r5 - add #16, r5 - mov.b @(r0, r7), r0 - shlr8 r1 - mov.b r0, @(8, r5) - extu.b r1, r0 - mov.b @(r0, r7), r0 - cmp/hs r6, r4 - mov.b r0, @r5 - add #16, r5 - bt .p4_loop - - /* No need to correct the count, we're only testing bits from now on. */ - -.p4_end: - mov #2, r0 - tst r0, r4 - bt .p2_t_end - - mov.w @r6+, r1 - extu.b r1, r0 - mov.b @(r0, r7), r0 - shlr8 r1 - mov.b r0, @(8, r5) - extu.b r1, r0 - mov.b @(r0, r7), r0 - mov.b r0, @r5 - add #16, r5 -.p2_t_end: - - mov #1, r0 - tst r0, r4 - bt .p1_t_end - - mov.b @r6+, r0 - extu.b r0, r0 - mov.b @(r0, r7), r0 - rts - mov.b r0, @r5 -.p1_t_end: - - rts - nop - .size __grey_line1, . - __grey_line1 - -#endif diff --git a/apps/plugins/lib/helper.c b/apps/plugins/lib/helper.c index 506903e808..6eb3498791 100644 --- a/apps/plugins/lib/helper.c +++ b/apps/plugins/lib/helper.c @@ -22,20 +22,6 @@ #include "plugin.h" #include "helper.h" -#ifdef CPU_SH -/* Lookup table for using the BIT_N() macro in plugins */ -const unsigned bit_n_table[32] = { - 1LU<< 0, 1LU<< 1, 1LU<< 2, 1LU<< 3, - 1LU<< 4, 1LU<< 5, 1LU<< 6, 1LU<< 7, - 1LU<< 8, 1LU<< 9, 1LU<<10, 1LU<<11, - 1LU<<12, 1LU<<13, 1LU<<14, 1LU<<15, - 1LU<<16, 1LU<<17, 1LU<<18, 1LU<<19, - 1LU<<20, 1LU<<21, 1LU<<22, 1LU<<23, - 1LU<<24, 1LU<<25, 1LU<<26, 1LU<<27, - 1LU<<28, 1LU<<29, 1LU<<30, 1LU<<31 -}; -#endif - /* Force the backlight on */ void backlight_force_on(void) { diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c index e5b48c2f6a..c580074d5e 100644 --- a/apps/plugins/lib/pluginlib_actions.c +++ b/apps/plugins/lib/pluginlib_actions.c @@ -51,16 +51,6 @@ const struct button_mapping pla_remote_ctx[] = { PLA_DOWN_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, { PLA_LEFT_REPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, { PLA_RIGHT_REPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, -#elif (CONFIG_KEYPAD == PLAYER_PAD) || \ - (CONFIG_KEYPAD == RECORDER_PAD) - { PLA_UP, BUTTON_RC_VOL_UP, BUTTON_NONE}, - { PLA_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE}, - { PLA_LEFT, BUTTON_RC_LEFT, BUTTON_NONE}, - { PLA_RIGHT, BUTTON_RC_RIGHT, BUTTON_NONE}, - { PLA_UP_REPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, - { PLA_DOWN_REPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, - { PLA_LEFT_REPEAT, BUTTON_RC_LEFT|BUTTON_REPEAT, BUTTON_NONE}, - { PLA_RIGHT_REPEAT, BUTTON_RC_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, #elif (CONFIG_REMOTE_KEYPAD == MROBE_REMOTE) { PLA_UP, BUTTON_RC_PLAY, BUTTON_NONE}, { PLA_DOWN, BUTTON_RC_DOWN, BUTTON_NONE}, @@ -101,9 +91,7 @@ const struct button_mapping pla_main_ctx[] = || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ || (CONFIG_KEYPAD == GIGABEAT_PAD) \ - || (CONFIG_KEYPAD == RECORDER_PAD) \ || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) \ - || (CONFIG_KEYPAD == ONDIO_PAD) \ || (CONFIG_KEYPAD == SANSA_C200_PAD) \ || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \ || (CONFIG_KEYPAD == MROBE100_PAD) \ @@ -145,15 +133,6 @@ const struct button_mapping pla_main_ctx[] = { PLA_DOWN_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, -#elif (CONFIG_KEYPAD == PLAYER_PAD) - { PLA_UP, BUTTON_PLAY, BUTTON_NONE }, - { PLA_DOWN, BUTTON_STOP, BUTTON_NONE }, - { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, - { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, - { PLA_UP_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, - { PLA_DOWN_REPEAT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE }, - { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, - { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) { PLA_UP, BUTTON_SCROLL_UP, BUTTON_NONE }, { PLA_DOWN, BUTTON_SCROLL_DOWN, BUTTON_NONE }, @@ -339,24 +318,6 @@ const struct button_mapping pla_main_ctx[] = {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, -#elif (CONFIG_KEYPAD == RECORDER_PAD) - {PLA_CANCEL, BUTTON_ON, BUTTON_NONE}, - {PLA_EXIT, BUTTON_OFF, BUTTON_NONE}, - {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, - {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, - {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, -#elif (CONFIG_KEYPAD == ONDIO_PAD) - {PLA_CANCEL, BUTTON_OFF|BUTTON_REL, BUTTON_OFF}, - {PLA_EXIT, BUTTON_OFF|BUTTON_REPEAT, BUTTON_NONE}, - {PLA_SELECT, BUTTON_MENU, BUTTON_NONE}, - {PLA_SELECT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_MENU}, - {PLA_SELECT_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, -#elif (CONFIG_KEYPAD == PLAYER_PAD) - {PLA_CANCEL, BUTTON_MENU|BUTTON_REL, BUTTON_MENU}, - {PLA_EXIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, - {PLA_SELECT, BUTTON_ON, BUTTON_NONE}, - {PLA_SELECT_REL, BUTTON_ON|BUTTON_REL, BUTTON_ON}, - {PLA_SELECT_REPEAT, BUTTON_ON|BUTTON_REPEAT, BUTTON_NONE}, #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) {PLA_CANCEL, BUTTON_HOME|BUTTON_REL, BUTTON_HOME}, {PLA_EXIT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_NONE}, diff --git a/apps/plugins/lib/xlcd_scroll.c b/apps/plugins/lib/xlcd_scroll.c index f2fc71ea47..e0fead71be 100644 --- a/apps/plugins/lib/xlcd_scroll.c +++ b/apps/plugins/lib/xlcd_scroll.c @@ -396,77 +396,7 @@ void xlcd_scroll_up(int count) { #if LCD_PIXELFORMAT == VERTICAL_PACKING -#if (CONFIG_CPU == SH7034) && (LCD_DEPTH == 1) - asm ( - "mov #0,r4 \n" /* x = 0 */ - "mova .su_shifttbl,r0 \n" /* calculate jump destination for */ - "mov.b @(r0,%[cnt]),%[cnt] \n" /* shift amount from table */ - "bra .su_cloop \n" /* skip table */ - "add r0,%[cnt] \n" - - ".align 2 \n" - ".su_shifttbl: \n" /* shift jump offset table */ - ".byte .su_shift0 - .su_shifttbl \n" - ".byte .su_shift1 - .su_shifttbl \n" - ".byte .su_shift2 - .su_shifttbl \n" - ".byte .su_shift3 - .su_shifttbl \n" - ".byte .su_shift4 - .su_shifttbl \n" - ".byte .su_shift5 - .su_shifttbl \n" - ".byte .su_shift6 - .su_shifttbl \n" - ".byte .su_shift7 - .su_shifttbl \n" - - ".su_cloop: \n" /* repeat for every column */ - "mov %[addr],r2 \n" /* get start address */ - "mov #0,r3 \n" /* current_row = 0 */ - "mov #0,r1 \n" /* fill with zero */ - - ".su_iloop: \n" /* repeat for all rows */ - "sub %[wide],r2 \n" /* address -= width */ - "mov.b @r2,r0 \n" /* get data byte */ - "shll8 r1 \n" /* old data to 2nd byte */ - "extu.b r0,r0 \n" /* extend unsigned */ - "or r1,r0 \n" /* combine old data */ - "jmp @%[cnt] \n" /* jump into shift "path" */ - "extu.b r0,r1 \n" /* store data for next round */ - - ".su_shift6: \n" /* shift right by 0..7 bits */ - "shll2 r0 \n" - "bra .su_shift0 \n" - "shlr8 r0 \n" - ".su_shift4: \n" - "shlr2 r0 \n" - ".su_shift2: \n" - "bra .su_shift0 \n" - "shlr2 r0 \n" - ".su_shift7: \n" - "shlr2 r0 \n" - ".su_shift5: \n" - "shlr2 r0 \n" - ".su_shift3: \n" - "shlr2 r0 \n" - ".su_shift1: \n" - "shlr r0 \n" - ".su_shift0: \n" - - "mov.b r0,@r2 \n" /* store data */ - "add #1,r3 \n" /* current_row++ */ - "cmp/hi r3,%[rows] \n" /* current_row < bheight - shift ? */ - "bt .su_iloop \n" - - "add #1,%[addr] \n" /* start_address++ */ - "add #1,r4 \n" /* x++ */ - "cmp/hi r4,%[wide] \n" /* x < width ? */ - "bt .su_cloop \n" - : /* outputs */ - : /* inputs */ - [addr]"r"(rb->lcd_framebuffer + blocklen * LCD_FBWIDTH), - [wide]"r"(LCD_FBWIDTH), - [rows]"r"(blocklen), - [cnt] "r"(bitcount) - : /* clobbers */ - "r0", "r1", "r2", "r3", "r4" - ); -#elif defined(CPU_COLDFIRE) && (LCD_DEPTH == 2) +#if defined(CPU_COLDFIRE) && (LCD_DEPTH == 2) asm ( "move.l %[wide],%%d3\n" /* columns = width */ @@ -590,76 +520,7 @@ void xlcd_scroll_down(int count) { #if LCD_PIXELFORMAT == VERTICAL_PACKING -#if (CONFIG_CPU == SH7034) && (LCD_DEPTH == 1) - asm ( - "mov #0,r4 \n" /* x = 0 */ - "mova .sd_shifttbl,r0 \n" /* calculate jump destination for */ - "mov.b @(r0,%[cnt]),%[cnt] \n" /* shift amount from table */ - "bra .sd_cloop \n" /* skip table */ - "add r0,%[cnt] \n" - - ".align 2 \n" - ".sd_shifttbl: \n" /* shift jump offset table */ - ".byte .sd_shift0 - .sd_shifttbl \n" - ".byte .sd_shift1 - .sd_shifttbl \n" - ".byte .sd_shift2 - .sd_shifttbl \n" - ".byte .sd_shift3 - .sd_shifttbl \n" - ".byte .sd_shift4 - .sd_shifttbl \n" - ".byte .sd_shift5 - .sd_shifttbl \n" - ".byte .sd_shift6 - .sd_shifttbl \n" - ".byte .sd_shift7 - .sd_shifttbl \n" - - ".sd_cloop: \n" /* repeat for every column */ - "mov %[addr],r2 \n" /* get start address */ - "mov #0,r3 \n" /* current_row = 0 */ - "mov #0,r1 \n" /* fill with zero */ - - ".sd_iloop: \n" /* repeat for all rows */ - "shlr8 r1 \n" /* shift right to get residue */ - "mov.b @r2,r0 \n" /* get data byte */ - "jmp @%[cnt] \n" /* jump into shift "path" */ - "extu.b r0,r0 \n" /* extend unsigned */ - - ".sd_shift6: \n" /* shift left by 0..7 bits */ - "shll8 r0 \n" - "bra .sd_shift0 \n" - "shlr2 r0 \n" - ".sd_shift4: \n" - "shll2 r0 \n" - ".sd_shift2: \n" - "bra .sd_shift0 \n" - "shll2 r0 \n" - ".sd_shift7: \n" - "shll2 r0 \n" - ".sd_shift5: \n" - "shll2 r0 \n" - ".sd_shift3: \n" - "shll2 r0 \n" - ".sd_shift1: \n" - "shll r0 \n" - ".sd_shift0: \n" - - "or r0,r1 \n" /* combine with last residue */ - "mov.b r1,@r2 \n" /* store data */ - "add %[wide],r2 \n" /* address += width */ - "add #1,r3 \n" /* current_row++ */ - "cmp/hi r3,%[rows] \n" /* current_row < bheight - shift ? */ - "bt .sd_iloop \n" - - "add #1,%[addr] \n" /* start_address++ */ - "add #1,r4 \n" /* x++ */ - "cmp/hi r4,%[wide] \n" /* x < width ? */ - "bt .sd_cloop \n" - : /* outputs */ - : /* inputs */ - [addr]"r"(rb->lcd_framebuffer + blockcount * LCD_FBWIDTH), - [wide]"r"(LCD_WIDTH), - [rows]"r"(blocklen), - [cnt] "r"(bitcount) - : /* clobbers */ - "r0", "r1", "r2", "r3", "r4" - ); -#elif defined(CPU_COLDFIRE) && (LCD_DEPTH == 2) +#if defined(CPU_COLDFIRE) && (LCD_DEPTH == 2) asm ( "move.l %[wide],%%d3\n" /* columns = width */ -- cgit v1.2.3