summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBarry Wardell <rockbox@barrywardell.net>2006-08-19 19:21:17 +0000
committerBarry Wardell <rockbox@barrywardell.net>2006-08-19 19:21:17 +0000
commit99c2dc52841aabd0af66b3cd43452478acf22c31 (patch)
tree75858a6f73e3562e1681740634ce6613b852d9ba
parent9fdb611547342c1dffdff84efdb9745c524a8f4d (diff)
downloadrockbox-99c2dc52841aabd0af66b3cd43452478acf22c31.tar.gz
rockbox-99c2dc52841aabd0af66b3cd43452478acf22c31.zip
Add new build target for iriver H10 5/6Gb.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10661 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/bitmaps/native/SOURCES2
-rw-r--r--apps/bitmaps/native/rockboxlogo.128x40x16.bmpbin0 -> 10294 bytes
-rw-r--r--apps/plugins/SOURCES6
-rw-r--r--apps/plugins/pacbox/SOURCES2
-rw-r--r--apps/plugins/sudoku/SOURCES2
-rw-r--r--firmware/SOURCES11
-rw-r--r--firmware/export/config-h10_5gb.h120
-rw-r--r--firmware/export/config.h10
-rwxr-xr-xtools/configure28
-rwxr-xr-xtools/mkmi4.sh3
-rw-r--r--uisimulator/sdl/UI-h10_5gb.bmpbin0 -> 487654 bytes
-rw-r--r--uisimulator/sdl/uisdl.h12
12 files changed, 191 insertions, 5 deletions
diff --git a/apps/bitmaps/native/SOURCES b/apps/bitmaps/native/SOURCES
index e8cff9f670..ca4bf47bd3 100644
--- a/apps/bitmaps/native/SOURCES
+++ b/apps/bitmaps/native/SOURCES
@@ -3,6 +3,8 @@
3/* Rockbox logo */ 3/* Rockbox logo */
4#if (LCD_DEPTH == 1) 4#if (LCD_DEPTH == 1)
5rockboxlogo.112x37x1.bmp 5rockboxlogo.112x37x1.bmp
6#elif (LCD_WIDTH == 128) && (LCD_DEPTH == 16)
7rockboxlogo.128x40x16.bmp
6#elif (LCD_WIDTH == 138) && (LCD_DEPTH == 2) 8#elif (LCD_WIDTH == 138) && (LCD_DEPTH == 2)
7rockboxlogo.138x46x2.bmp 9rockboxlogo.138x46x2.bmp
8#elif (LCD_WIDTH == 160) && (LCD_DEPTH == 2) 10#elif (LCD_WIDTH == 160) && (LCD_DEPTH == 2)
diff --git a/apps/bitmaps/native/rockboxlogo.128x40x16.bmp b/apps/bitmaps/native/rockboxlogo.128x40x16.bmp
new file mode 100644
index 0000000000..b7a81c5961
--- /dev/null
+++ b/apps/bitmaps/native/rockboxlogo.128x40x16.bmp
Binary files differ
diff --git a/apps/plugins/SOURCES b/apps/plugins/SOURCES
index 1ab3361ac7..1874eda18d 100644
--- a/apps/plugins/SOURCES
+++ b/apps/plugins/SOURCES
@@ -35,7 +35,9 @@ mandelbrot.c
35plasma.c 35plasma.c
36 36
37bounce.c 37bounce.c
38#ifndef IRIVER_H10_5GB
38bubbles.c 39bubbles.c
40#endif
39#if LCD_WIDTH != 128 41#if LCD_WIDTH != 128
40/* These need adjusting for the iRiver if'p screen */ 42/* These need adjusting for the iRiver if'p screen */
41brickmania.c 43brickmania.c
@@ -44,7 +46,9 @@ calculator.c
44chip8.c 46chip8.c
45demystify.c 47demystify.c
46flipit.c 48flipit.c
49#ifndef IRIVER_H10_5GB
47jewels.c 50jewels.c
51#endif
48minesweeper.c 52minesweeper.c
49oscilloscope.c 53oscilloscope.c
50pong.c 54pong.c
@@ -62,7 +66,9 @@ tetrox.c
62video.c 66video.c
63#endif 67#endif
64vu_meter.c 68vu_meter.c
69#ifndef IRIVER_H10_5GB
65wormlet.c 70wormlet.c
71#endif
66 72
67#ifdef CONFIG_RTC 73#ifdef CONFIG_RTC
68clock.c 74clock.c
diff --git a/apps/plugins/pacbox/SOURCES b/apps/plugins/pacbox/SOURCES
index cedcda1363..188fc53c1f 100644
--- a/apps/plugins/pacbox/SOURCES
+++ b/apps/plugins/pacbox/SOURCES
@@ -1,3 +1,4 @@
1#ifndef IRIVER_H10_5GB
1arcade.c 2arcade.c
2pacbox.c 3pacbox.c
3hardware.c 4hardware.c
@@ -10,3 +11,4 @@ pacbox_lcd.c
10#if defined(CPU_COLDFIRE) 11#if defined(CPU_COLDFIRE)
11pacbox_cf.S 12pacbox_cf.S
12#endif 13#endif
14#endif
diff --git a/apps/plugins/sudoku/SOURCES b/apps/plugins/sudoku/SOURCES
index 7cce555c93..20d8121175 100644
--- a/apps/plugins/sudoku/SOURCES
+++ b/apps/plugins/sudoku/SOURCES
@@ -1,3 +1,5 @@
1#ifndef IRIVER_H10_5GB
1sudoku.c 2sudoku.c
2generator.c 3generator.c
3templates.c 4templates.c
5#endif
diff --git a/firmware/SOURCES b/firmware/SOURCES
index 23da475304..f313dcd902 100644
--- a/firmware/SOURCES
+++ b/firmware/SOURCES
@@ -262,6 +262,17 @@ target/arm/iriver/h10/lcd-h10.c
262#endif 262#endif
263#endif 263#endif
264 264
265#ifdef IRIVER_H10_5GB
266#ifndef SIMULATOR
267target/arm/iriver/h10/backlight-h10.c
268target/arm/iriver/h10/button-h10.c
269target/arm/ata-pp5020.c
270target/arm/iriver/h10/power-h10.c
271target/arm/iriver/h10/usb-h10.c
272target/arm/iriver/h10/lcd-h10.c
273#endif
274#endif
275
265#ifdef GIGABEAT_F 276#ifdef GIGABEAT_F
266#ifndef SIMULATOR 277#ifndef SIMULATOR
267target/arm/gigabeat/meg-fx/backlight-meg-fx.c 278target/arm/gigabeat/meg-fx/backlight-meg-fx.c
diff --git a/firmware/export/config-h10_5gb.h b/firmware/export/config-h10_5gb.h
new file mode 100644
index 0000000000..09b9132525
--- /dev/null
+++ b/firmware/export/config-h10_5gb.h
@@ -0,0 +1,120 @@
1/*
2 * This config file is for the iriver H10 5/6Gb model
3 */
4
5#define TARGET_TREE /* this target is using the target tree system */
6
7/* For Rolo and boot loader */
8#define MODEL_NUMBER 13
9
10/* define this if you have recording possibility */
11/*#define HAVE_RECORDING 1*/ /* TODO: add support for this */
12
13/* define this if you have a bitmap LCD display */
14#define HAVE_LCD_BITMAP 1
15
16/* define this if you have a colour LCD */
17#define HAVE_LCD_COLOR 1
18
19/* define this if you have access to the quickscreen */
20#define HAVE_QUICKSCREEN
21
22/* LCD dimensions */
23#define LCD_WIDTH 128
24#define LCD_HEIGHT 128
25#define LCD_DEPTH 16 /* 65536 colours */
26#define LCD_PIXELFORMAT RGB565SWAPPED /* rgb565 byte-swapped */
27
28/*#define IRAM_LCDFRAMEBUFFER IDATA_ATTR*//* put the lcd frame buffer in IRAM */
29
30#define CONFIG_KEYPAD IRIVER_H10_PAD
31
32/* Define this if you do software codec */
33#define CONFIG_CODEC SWCODEC
34
35/* define this if you have a real-time clock */
36#ifndef BOOTLOADER
37#define CONFIG_RTC RTC_E8564 /* TODO: figure this out */
38#endif
39
40/* Define this if you have a software controlled poweroff */
41#define HAVE_SW_POWEROFF
42
43/* The number of bytes reserved for loadable codecs */
44#define CODEC_SIZE 0x80000
45
46/* The number of bytes reserved for loadable plugins */
47#define PLUGIN_BUFFER_SIZE 0x80000
48
49/* Define this if you have the WM8975 audio codec */
50#define HAVE_WM8731
51
52#define AB_REPEAT_ENABLE 1
53
54/* FM Tuner */
55/*#define CONFIG_TUNER TEA5767
56#define CONFIG_TUNER_XTAL 32768 *//* TODO: what is this? */
57
58/* Define this for LCD backlight available */
59#define CONFIG_BACKLIGHT BL_H10 /* TODO: figure this out, probably not necessary
60 because of target tree stuff */
61
62#define BATTERY_CAPACITY_DEFAULT 700 /* default battery capacity */
63
64#ifndef SIMULATOR
65
66/* Define this if you have a PortalPlayer PP5020 */
67#define CONFIG_CPU PP5020
68
69/* Define this if you want to use the PP5020 i2c interface */
70#define CONFIG_I2C I2C_PP5020
71
72/* Type of mobile power */
73#define CONFIG_BATTERY BATT_BP009
74#define BATTERY_CAPACITY_MIN 700 /* min. capacity selectable */
75#define BATTERY_CAPACITY_MAX 900 /* max. capacity selectable */
76#define BATTERY_CAPACITY_INC 10 /* capacity increment */
77#define BATTERY_TYPES_COUNT 1 /* only one type */
78#define BATTERY_SCALE_FACTOR 5865
79
80/* Hardware controlled charging? FIXME */
81//#define CONFIG_CHARGING CHARGING_SIMPLE
82
83/* define this if the hardware can be powered off while charging */
84/* TODO: should this be set for the H10? */
85//#define HAVE_POWEROFF_WHILE_CHARGING
86
87/* The start address index for ROM builds */
88#define ROM_START 0x00000000
89
90/* Define this to the CPU frequency */
91/* TODO: this is probably wrong */
92#define CPU_FREQ 11289600
93
94/* Type of LCD */
95#define CONFIG_LCD LCD_H10_5GB
96
97/* Offset ( in the firmware file's header ) to the file length */
98#define FIRMWARE_OFFSET_FILE_LENGTH 0
99
100/* Offset ( in the firmware file's header ) to the file CRC */
101#define FIRMWARE_OFFSET_FILE_CRC 0
102
103/* Offset ( in the firmware file's header ) to the real data */
104#define FIRMWARE_OFFSET_FILE_DATA 8
105
106/* #define USB_IPODSTYLE */
107
108/* define this if the unit can be powered or charged via USB */
109#define HAVE_USB_POWER
110
111/* Virtual LED (icon) */
112#define CONFIG_LED LED_VIRTUAL
113
114/* Define this if you have adjustable CPU frequency */
115#define HAVE_ADJUSTABLE_CPU_FREQ
116
117#define BOOTFILE_EXT "h10"
118#define BOOTFILE "rockbox." BOOTFILE_EXT
119
120#endif
diff --git a/firmware/export/config.h b/firmware/export/config.h
index 1579767ade..8f1a5e65cc 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -70,7 +70,8 @@
70#define BATT_4AA_NIMH 1500 70#define BATT_4AA_NIMH 1500
71#define BATT_3AAA 1000 /* Ondio */ 71#define BATT_3AAA 1000 /* Ondio */
72#define BATT_LIPOL1300 1300 /* the type used in iRiver h1x0 models */ 72#define BATT_LIPOL1300 1300 /* the type used in iRiver h1x0 models */
73#define BATT_LPCS355385 1550 /* iriver h10 - SKC LPCS355385 */ 73#define BATT_LPCS355385 1550 /* iriver h10 20Gb - SKC LPCS355385 */
74#define BATT_BP009 820 /* iriver H10 5/6Gb - iriver BP009 */
74 75
75/* CONFIG_CHARGING */ 76/* CONFIG_CHARGING */
76#define CHARGING_SIMPLE 1 /* Simple, hardware controlled charging */ 77#define CHARGING_SIMPLE 1 /* Simple, hardware controlled charging */
@@ -93,6 +94,8 @@
93#define LCD_IPODMINI 10 /* as used by iPod Mini g1/g2 */ 94#define LCD_IPODMINI 10 /* as used by iPod Mini g1/g2 */
94#define LCD_IFP7XX 11 /* as used by iRiver iFP 7xx/8xx */ 95#define LCD_IFP7XX 11 /* as used by iRiver iFP 7xx/8xx */
95#define LCD_GIGABEAT 12 96#define LCD_GIGABEAT 12
97#define LCD_H10 13 /* as used by iriver H10 20Gb */
98#define LCD_H10_5GB 14 /* as used by iriver H10 5Gb */
96 99
97/* LCD_PIXELFORMAT */ 100/* LCD_PIXELFORMAT */
98#define HORIZONTAL_PACKING 1 101#define HORIZONTAL_PACKING 1
@@ -115,8 +118,9 @@
115#define BL_IRIVER_IFP7XX 9 /* IRiver GPIO */ 118#define BL_IRIVER_IFP7XX 9 /* IRiver GPIO */
116#define BL_IPODMINI 10 /* Apple iPod Mini */ 119#define BL_IPODMINI 10 /* Apple iPod Mini */
117#define BL_GIGABEAT 11 /* Toshiba Gigabeat */ 120#define BL_GIGABEAT 11 /* Toshiba Gigabeat */
118#define BL_IRIVER_H10 12 /* iriver H10 */ 121#define BL_H10 12 /* iriver H10 */
119#define BL_X5 13 /* iAudio X5 PCF50606 I2C */ 122#define BL_X5 13 /* iAudio X5 PCF50606 I2C */
123#define BL_H10_5GB 14 /* iriver H10 5/6GB */
120 124
121/* CONFIG_I2C */ 125/* CONFIG_I2C */
122#define I2C_PLAYREC 0 /* Archos Player/Recorder style */ 126#define I2C_PLAYREC 0 /* Archos Player/Recorder style */
@@ -192,6 +196,8 @@
192#include "config-ipodmini2g.h" 196#include "config-ipodmini2g.h"
193#elif defined(IRIVER_H10) 197#elif defined(IRIVER_H10)
194#include "config-h10.h" 198#include "config-h10.h"
199#elif defined(IRIVER_H10_5GB)
200#include "config-h10_5gb.h"
195#elif defined(SANSA_E200) 201#elif defined(SANSA_E200)
196#include "config-e200.h" 202#include "config-e200.h"
197#else 203#else
diff --git a/tools/configure b/tools/configure
index e228a2fd39..dad1042b6b 100755
--- a/tools/configure
+++ b/tools/configure
@@ -460,8 +460,9 @@ toolsdir='\$(ROOTDIR)/tools'
460 echo "19 - iriver iFP-790" 460 echo "19 - iriver iFP-790"
461 echo "20 - Toshiba Gigabeat F" 461 echo "20 - Toshiba Gigabeat F"
462 echo "21 - iPod Mini 2G" 462 echo "21 - iPod Mini 2G"
463 echo "22 - iriver H10" 463 echo "22 - iriver H10 20Gb"
464 echo "23 - SanDisk Sansa e200" 464 echo "23 - SanDisk Sansa e200"
465 echo "24 - iriver H10 5/6Gb"
465 466
466 target_id=`input`; 467 target_id=`input`;
467 468
@@ -933,6 +934,29 @@ toolsdir='\$(ROOTDIR)/tools'
933 t_model="sansa-e200" 934 t_model="sansa-e200"
934 ;; 935 ;;
935 936
937 24)
938 archos="h10_5gb"
939 target="-DIRIVER_H10_5GB"
940 memory=32 # always
941 arm7tdmicc
942 tool="$rootdir/tools/mkmi4.sh h10_5gb"
943 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
944 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
945 output="H10.mi4"
946 appextra="recorder:gui"
947 archosrom=""
948 flash=""
949 plugins="yes"
950 codecs="libmad liba52 libffmpegFLAC libTremor libwavpack dumb libmusepack libalac libfaad libm4a"
951 # toolset is the tools within the tools directory that we build for
952 # this particular target.
953 toolset=$genericbitmaptools
954 # architecture, manufacturer and model for the target-tree build
955 t_cpu="arm"
956 t_manufacturer="iriver"
957 t_model="h10"
958 ;;
959
936 *) 960 *)
937 echo "Please select an actual target platform!" 961 echo "Please select an actual target platform!"
938 exit 962 exit
@@ -988,7 +1012,7 @@ fi
988 case $option in 1012 case $option in
989 [Bb]) 1013 [Bb])
990 case $archos in 1014 case $archos in
991 h100|h120|h300|x5|ipodcolor|ipodnano|ipodvideo|ipod3g|ipod4g|ipodmini|ipodmini2g|gigabeatf|h10|e200) 1015 h100|h120|h300|x5|ipodcolor|ipodnano|ipodvideo|ipod3g|ipod4g|ipodmini|ipodmini2g|gigabeatf|h10|e200|h10_5gb)
992 extradefines="-DBOOTLOADER" # for target makefile symbol EXTRA_DEFINES 1016 extradefines="-DBOOTLOADER" # for target makefile symbol EXTRA_DEFINES
993 appsdir='\$(ROOTDIR)/bootloader' 1017 appsdir='\$(ROOTDIR)/bootloader'
994 apps="bootloader" 1018 apps="bootloader"
diff --git a/tools/mkmi4.sh b/tools/mkmi4.sh
index ee9c8f1228..00fee9bdfa 100755
--- a/tools/mkmi4.sh
+++ b/tools/mkmi4.sh
@@ -63,6 +63,9 @@ case $target in
63 h10) 63 h10)
64 tea=20gc_eng 64 tea=20gc_eng
65 ;; 65 ;;
66 h10_5gb)
67 tea=default
68 ;;
66 *) 69 *)
67 echo "unsupported target" 70 echo "unsupported target"
68 help 71 help
diff --git a/uisimulator/sdl/UI-h10_5gb.bmp b/uisimulator/sdl/UI-h10_5gb.bmp
new file mode 100644
index 0000000000..03542d8f69
--- /dev/null
+++ b/uisimulator/sdl/UI-h10_5gb.bmp
Binary files differ
diff --git a/uisimulator/sdl/uisdl.h b/uisimulator/sdl/uisdl.h
index 51d1aeca76..55d696bc63 100644
--- a/uisimulator/sdl/uisdl.h
+++ b/uisimulator/sdl/uisdl.h
@@ -200,7 +200,7 @@
200#define UI_LCD_HEIGHT 320 200#define UI_LCD_HEIGHT 320
201 201
202#elif defined(IRIVER_H10) 202#elif defined(IRIVER_H10)
203#define UI_TITLE "iriver H10" 203#define UI_TITLE "iriver H10 20Gb"
204#define UI_WIDTH 392 /* width of GUI window */ 204#define UI_WIDTH 392 /* width of GUI window */
205#define UI_HEIGHT 391 /* height of GUI window */ 205#define UI_HEIGHT 391 /* height of GUI window */
206/* high-colour */ 206/* high-colour */
@@ -209,6 +209,16 @@
209#define UI_LCD_WIDTH LCD_WIDTH /* * 1.5 */ 209#define UI_LCD_WIDTH LCD_WIDTH /* * 1.5 */
210#define UI_LCD_HEIGHT LCD_HEIGHT /* * 1.5 */ 210#define UI_LCD_HEIGHT LCD_HEIGHT /* * 1.5 */
211 211
212#elif defined(IRIVER_H10_5GB)
213#define UI_TITLE "iriver H10 5/6Gb"
214#define UI_WIDTH 353 /* width of GUI window */
215#define UI_HEIGHT 460 /* height of GUI window */
216/* high-colour */
217#define UI_LCD_POSX 112 /* x position of lcd */
218#define UI_LCD_POSY 45 /* y position of lcd (74 for real aspect) */
219#define UI_LCD_WIDTH LCD_WIDTH /* * 1.5 */
220#define UI_LCD_HEIGHT LCD_HEIGHT /* * 1.5 */
221
212#elif defined(IRIVER_IFP7XX) 222#elif defined(IRIVER_IFP7XX)
213#define UI_TITLE "iriver iFP7xx" 223#define UI_TITLE "iriver iFP7xx"
214#define UI_WIDTH 425 /* width of GUI window */ 224#define UI_WIDTH 425 /* width of GUI window */