Romeo fails to detect the large and small ROMs in my
palm VII. It reports:
Processing '../../mypalm.rom'
======= Large ROM =======
*** No Large ROM exists in '../../mypalm.rom'
Walking through the code, I found that if ROM_base
(line 165 in extract.c) was forced to 0x00C00000
then it would detect the rom correctly as shown here:
> romeo -vli ../mypalm.rom
Processing '../mypalm.rom'
======= Large ROM =======
ROM_base [0x00C00000]
Card_base [0x00C10000]
File_base [0x00010000]
- 0x00010000 ----- Card Header ------------------------
------
Initial Stack 0x00003000
Reset Vector 0x1001023C
Signature 0xFEEDBEEF
Header Version 0x0003
Flags 0x0010 [ROM Supports 68328
processor]
Card Name 'PalmCard'
Card Manufacturer 'Palm Computing'
Version 0x0001
Creation Date Mon Aug 16 05:40:52 1999
[0xB3DDA944]
RAM Block count 1 [0x0001]
Block List Offset 0x00010200
RW Params Offset 0x00004000
RW Params Size 0x00002000 [ 8.00K]
RO Params Offset 0x00006000
Big ROM Offset 0x00010000
Checksum Bytes 0x001F0000 [1984.00K]
Checksum (crc16) 0x6468
RW Working Offset 0x00008000
RW Working Size 0x00008000 [32.00K]
HAL Code Offset 0x00000000
- 0x00010100 ----- Storage Header ---------------------
------
Signature 0xFEEDFACE
Version 0x0001
Flags 0x0000 [ROM store]
Storage Name 'ROM Store'
Creation Date Thu Dec 31 17:00:00 1903
[0x00000000]
Backup Date Thu Dec 31 17:00:00 1903
[0x00000000]
Heap List Offset 0x00010208
Init Code Offset 1 0x00016E14
Init Code Offset 2 0x0001E94A
Database Dir ID 0x001FFF46
First Heap 0x00000000
Dynamic Heap Size 0x00000000
First RAM block 0x00000000
CRC 0x00000000
However, even with the ROM_base fix, romeo still fails
to extract any of the files..:
> romeo -xldi ../mypalm.rom
Processing '../mypalm.rom'
======= Large ROM =======
ROM_base [0x00C00000]
Card_base [0x00C10000]
File_base [0x00010000]
- 0x00010000 ----- Card Header ------------------------
------
Initial Stack 0x00003000
Reset Vector 0x1001023C
Signature 0xFEEDBEEF
Header Version 0x0003
Flags 0x0010 [ROM Supports 68328
processor]
Card Name 'PalmCard'
Card Manufacturer 'Palm Computing'
Version 0x0001
Creation Date Mon Aug 16 05:40:52 1999
[0xB3DDA944]
RAM Block count 1 [0x0001]
Block List Offset 0x00010200
RW Params Offset 0x00004000
RW Params Size 0x00002000 [ 8.00K]
RO Params Offset 0x00006000
Big ROM Offset 0x00010000
Checksum Bytes 0x001F0000 [1984.00K]
Checksum (crc16) 0x6468
RW Working Offset 0x00008000
RW Working Size 0x00008000 [32.00K]
HAL Code Offset 0x00000000
- 0x00010100 ----- Storage Header ---------------------
------
Signature 0xFEEDFACE
Version 0x0001
Flags 0x0000 [ROM store]
Storage Name 'ROM Store'
Creation Date Thu Dec 31 17:00:00 1903
[0x00000000]
Backup Date Thu Dec 31 17:00:00 1903
[0x00000000]
Heap List Offset 0x00010208
Init Code Offset 1 0x00016E14
Init Code Offset 2 0x0001E94A
Database Dir ID 0x001FFF46
First Heap 0x00000000
Dynamic Heap Size 0x00000000
First RAM block 0x00000000
CRC 0x00000000
- 0x001FFF46 ----- Database List ----------------------
-----
Next Database ID 0x00000000
num Databases 43 [0x002B]
idx: offset size : type.ctor ver
attributes name
38: 0x001FBD3E 0: panl.wrls 1
[RR.........] 'Wireless'
37: 0x001FBE4A 0: panl.shct 1
[RR.........] 'ShortCuts'
36: 0x001FBF60 0: panl.ownr 1
[RR.........] 'Owner'
35: 0x001FC03A 0: panl.netw 2
[RR.........] 'Network'
34: 0x001FC22C 0: panl.modm 1
[RR.........] 'Modem'
33: 0x001FC306 0: panl.gnrl 1
[RR.........] 'General'
32: 0x001FC43A 0: panl.frmt 1
[RR.........] 'Formats'
31: 0x001FC4D8 0: panl.digi 1
[RR.........] 'Digitizer'
30: 0x001FC594 0: panl.bttn 1
[RR.........] 'Buttons'
40: 0x001FC6AA 0: sdio.nett 1
[RR.........] 'Cmd-nettrace'
41: 0x001FC72A 0: sdio.ping 1
[RR.........] 'Cmd-ping'
10: 0x001FC7AA 0: appl.msgs 1
[RR.........] 'WMessaging'
16: 0x001FCD16 0: appl.todo 1
[RR.........] 'To Do List'
15: 0x001FCE68 0: appl.sync 1
[RR.........] 'HotSync'
14: 0x001FD23A 0: appl.setp 1
[RR......h..] 'Setup'
13: 0x001FD45E 0: appl.secr 1
[RR.........] 'Security'
12: 0x001FD5CE 0: appl.rfdg 1
[RR.........] 'rfdiag'
11: 0x001FD748 0: appl.pref 1
[RR.........] 'Preferences'
9: 0x001FD7F0 0: appl.memo 1
[RR.........] 'Memo Pad'
7: 0x001FD96A 0: appl.mail 2
[RR.........] 'Mail'
8: 0x001FDCA6 0: appl.mcus 1
[RR......h..] 'MACUtil'
6: 0x001FDD6C 0: appl.lnch 1
[RR.........] 'Launcher'
5: 0x001FDFFE 0: appl.exps 1
[RR.........] 'Expense'
4: 0x001FE222 0: appl.date 1
[RR.........] 'Date Book'
3: 0x001FE554 0: appl.clpr 1
[RR......h..] 'Clipper'
2: 0x001FE7A0 0: appl.calc 1
[RR.........] 'Calculator'
1: 0x001FE99C 0: appl.addr 1
[RR.........] 'Address Book'
0: 0x001FEB48 0: appl.actv 1
[RR.........] 'Activate'
18: 0x001FF1CC 0: extn.palm 2
[RR.........] 'MS-CHAP Support'
25: 0x001FF238 0: libr.webl 1
[RR.........] 'Web Library'
24: 0x001FF2AE 0: libr.secl 1
[RR.........] 'Security Library'
20: 0x001FF31A 0: htal.htcp 6
[RR.........] 'NetSync'
19: 0x001FF37C 0: htal.hpad 4
[RR.........] 'PADHTAL Library'
28: 0x001FF3DE 0: neti.ram_ 1
[RR.........] 'RAM NetIF'
26: 0x001FF440 0: neti.loop 1
[RR.........] 'Loopback NetIF'
29: 0x001FF4A2 0: neti.slip 1
[RR.........] 'SLIP NetIF'
27: 0x001FF54A 0: neti.ppp_ 1
[RR.........] 'PPP NetIF'
23: 0x001FF5F2 0: libr.netl 1
[RR.........] 'Net Library'
17: 0x001FF686 0: exgl.irda 6
[RR.........] 'IrDA Library'
22: 0x001FF6F2 0: libr.inet 1
[RR.........] 'INet Library'
42: 0x001FF772 0: uish.psys 1
[RR.........] 'UIAppShell'
21: 0x001FF7F2 0: krnl.psys 4
[RR.........] 'AMX'
39: 0x001FF872 446777: rsrc.psys 1
[RR.........] 'System'
Extracting 'Activate'
Any suggestions?