BlitterStudio / amiberry

Optimized Amiga emulator for Linux/macOS
https://amiberry.com
GNU General Public License v3.0
660 stars 88 forks source link

[v4.1.4] Loading of old (pre-4.x) save states triggers a CPU halt #831

Closed Drag0nFly closed 2 years ago

Drag0nFly commented 3 years ago

With the latest Amiberry running on rpi4 on Raspbian (everything updated to the latest releases as of yesterday), loading a statefile which has previously been known as working crashes the emulator after subsequently loading it (gameplay is frozen in its saved state). Regular gameplay (i.e, when started from the beginning of the game) works as usual but with a ~1sec audio delay (also present before, as I have been unable to get rid of it)

This is using the stock a1200 config. (Reason I am mentioning is that I notice there is memory allocated for Zorro III and RTG which I have not added.)

Including relevant excerpts of amiberry.log below:

Amiberry v4.1.4 (2021-06-05) Logfile

Allocated 16 MB for 24-bit area (0x20000000) and 1152 MB for Z3 and RTG at real address (0x60000000 - 0xa8000020)
Sorting devices and modes...
0: 640x400, 8-bit (50,60)
1: 640x400, 16-bit (50,60)
2: 640x400, 32-bit (50,60)
3: 640x480, 8-bit (50,60)
4: 640x480, 16-bit (50,60)
5: 640x480, 32-bit (50,60)
6: 720x400, 8-bit (50,60)
7: 720x400, 16-bit (50,60)
8: 720x400, 32-bit (50,60)
9: 800x480, 8-bit (50,60)
10: 800x480, 16-bit (50,60)
11: 800x480, 32-bit (50,60)
12: 800x600, 8-bit (50,60)
13: 800x600, 16-bit (50,60)
14: 800x600, 32-bit (50,60)
15: 960x540, 8-bit (50,60)
16: 960x540, 16-bit (50,60)
17: 960x540, 32-bit (50,60)
18: 1024x768, 8-bit (50,60)
19: 1024x768, 16-bit (50,60)
20: 1024x768, 32-bit (50,60)
21: 1280x720, 8-bit (50,60)
22: 1280x720, 16-bit (50,60)
23: 1280x720, 32-bit (50,60)
24: 1280x800, 8-bit (50,60)
25: 1280x800, 16-bit (50,60)
26: 1280x800, 32-bit (50,60)
27: 1280x1024, 8-bit (50,60)
28: 1280x1024, 16-bit (50,60)
29: 1280x1024, 32-bit (50,60)
30: 1360x768, 8-bit (50,60)
31: 1360x768, 16-bit (50,60)
32: 1360x768, 32-bit (50,60)
33: 1366x768, 8-bit (50,60)
34: 1366x768, 16-bit (50,60)
35: 1366x768, 32-bit (50,60)
36: 1680x1050, 8-bit (50,60)
37: 1680x1050, 16-bit (50,60)
38: 1680x1050, 32-bit (50,60)
39: 1920x1080, 8-bit (50,60)
40: 1920x1080, 16-bit (50,60)
41: 1920x1080, 32-bit (50,60)
42 display modes.
Desktop: W=800 H=600 B=24 HZ=0. CXVS=800 CYVS=600
clipboard_init
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
Controller init_kb_from_retroarch(0): Found
Controller init_kb_from_retroarch(1): Not found
KS ver = 34 (0x22)
Stored port 0/0 d=0: added 200 0
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Port0: ID 'mouse' matched
Stored port 1/0 d=0: added 100 0
Stored port 1/0 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: ID 'joy0' matched
Port2: NONE
Port3: NONE
target_cfgfile_load(): load file /opt/retropie/emulators/amiberry/conf/default.uae
load config '/opt/retropie/emulators/amiberry/conf/default.uae':3
unknown config entry: 'amiberry.hide_idle_led=0'
unknown config entry: 'joyport0_autofire=none'
unknown config entry: 'joyport0_mode=mousenowheel'
unknown config entry: 'joyport0_friendlyname=Mouse'
unknown config entry: 'joyport0_name=MOUSE0'
unknown config entry: 'joyport1_autofire=none'
unknown config entry: 'joyport1_mode=djoy'
unknown config entry: 'joyport1_friendlyname=Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller'
unknown config entry: 'joyport1_name=JOY1'
unknown config entry: 'amiberry.allow_host_run=false'
KS ver = 39 (0x27)
Stored port 0/0 d=0: added 200 0
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Port0: ID 'mouse' matched
Stored port 1/0 d=0: added 100 0
Stored port 1/0 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: ID 'joy1' matched
Port2: NONE
Port3: NONE
KS ver = 39 (0x27)
Stored port 0/0 d=1: added 200 0 System mouse MOUSE0
Port0: COMBO 'System mouse' + 'MOUSE0' matched
Stored port 1/0 d=1: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: COMBO 'Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller' + 'JOY0' matched
Port2: NONE
Port3: NONE
WHDLoad... /home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha
WHDBooter Launched
SymLink Kickstart ROMs for Booter
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick33180.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick34005.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick37175.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick39106.A1200
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40063.A600
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40068.A4000
WHDBooter - Host: A600 ROM Available
WHDBooter - Loading whdload_db.xml
WHDBooter - Searching whdload_db.xml for Gods_v2.3.1_0666
WHDBooter - Game H/W Settings:

        PRIMARY_CONTROL=JOYSTICK
        PORT0=JOY
        PORT1=JOY
        FAST_COPPER=FALSE
        JIT=FALSE
        SCREEN_AUTOHEIGHT=FALSE
        SCREEN_HEIGHT=400
        SCREEN_CENTERH=SMART
        SCREEN_CENTERV=SMART

WHDBooter - Default Slave: Gods.Slave
WHDBooter - SubPath:  Gods
WHDBooter - Libraries:  Gods
WHDBooter - Created Startup-Sequence

IF NOT EXISTS WHDLoad
DH3:C/Assign C: DH3:C/ ADD
ENDIF
CD "Games:Gods"
WHDLoad SLAVE="Games:Gods/Gods.Slave" PRELOAD NOWRITECACHE NOREQ SPLASHDELAY=0 SAVEPATH=Saves:Savegames/ SAVEDIR="Gods"

WHDBooter - Saved Auto-Startup to /tmp/s/startup-sequence
WHDBooter Option (Joystick Control): joyport0
WHDBooter Option (Joystick Control): joyport1
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 100 0
Stored port 0/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port0: ID 'joy2' matched
Stored port 1/1 d=0: added 100 0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: ID 'joy1' matched
Port2: NONE
Port3: NONE
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
RTAREA located at 00F00000
mapped_malloc(): 0x00f00000 - 0x00f10000 (0x20f00000 - 0x20f10000) -> UAE Boot ROM (rtarea)
TRAP_ENTRY = 00f01eda
mapped_malloc(): 0x00200000 - 0x00600000 (0x20200000 - 0x20600000) -> Fast memory (*)
mapped_malloc(): 0x00f80000 - 0x01000000 (0x20f80000 - 0x21000000) -> Kickstart ROM (kick)
mapped_malloc(): 0x00000000 - 0x00200000 (0x20000000 - 0x20200000) -> Chip memory (chip)
ROM loader.. (<none>)
Known ROM 'KS ROM v3.0 (A1200)' loaded
ROM loader end
memory init end
No disk in drive 0.
JIT: cache=0. b=1 w=1 l=1 fpu=0 nf=1 inline=1 hard=0
1867 CPU functions
SDL2: Set window not to minimize on focus loss
uae_start_thread "display thread" function at 0x242e20 arg (nil)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Building CPU, 45912 opcodes (2 1 1)
JIT popallspace: 0xac6a0000-0xac6a0800
CPU=68020, FPU=0, JIT=0. prefetch 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 00000000. Chipset mask = 00000003
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+0) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*135) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
uae_start_thread "ide" function at 0x160100 arg 0x327c2a4
Card 0: skipping autoconfig (not autoconfig)
Card 2: skipping autoconfig (not autoconfig)
hardreset, memory cleared
SNDRATE 312.0*227.0*50.080410=3546894.958099
SDL Controller/Joystick device added or removed! Re-running import joysticks...
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
SNDRATE 312.0*227.0*50.080410=3546894.958099
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+0) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*230) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
SERIAL: period=372, baud=9600, hsyncs=14, bits=8, PC=f8016e
Card 4: Z2 0x00200000 4096K RAM Fast memory
mapped_malloc(): 0x00e90000 - 0x00ea0000 (0x20e90000 - 0x20ea0000) -> Filesystem autoconfig (*)
Card 5: Z2 0x00e90000   64K ROM Filesystem autoconfig
filesystem: diagentry 00200098 configdev 00000c40
SNDRATE 312.0*227.0*50.080410=3546894.958099
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*200) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Mounting uaehf.device:0 0 (0):
FS: mounted virtual unit DH0 (/tmp/)
Mounting uaehf.device:0 1 (0):
FS: mounted virtual unit DH3 (/opt/retropie/emulators/amiberry/whdboot/boot-data.zip)
Mounting uaehf.device:0 2 (0):
FS: mounted virtual unit DH1 (/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha)
Mounting uaehf.device:0 3 (0):
FS: mounted virtual unit DH2 (/opt/retropie/emulators/amiberry/whdboot/save-data/)
FS: DH0 (flags=00000002,E=0,ED=1,EF=0,native='/tmp/') starting..
FS: Games (flags=00000004,E=0,ED=0,EF=1,native='/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha') starting..
FS: Saves (flags=00000002,E=0,ED=1,EF=0,native='/opt/retropie/emulators/amiberry/whdboot/save-data/') starting..
FS: DH3 (flags=00000004,E=0,ED=0,EF=1,native='/opt/retropie/emulators/amiberry/whdboot/boot-data.zip') starting..
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
Checking for inserted/removed devices..
Input remapping done. Changed=0.
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
SNDRATE 592.0*227.0*26.393581=3546875.041565
PAL mode V=26.3936Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 591*26.3936 = 15598.6064 / 26.4 = 591
STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Gods_v2.3.1_0666.uss'
Saved with: 'UAE 4.4.0', description: '...'
Chunk 'CPU ' size 122 (122)
CPU: 68EC020, PC=0001D2FC
Chunk 'CPU ' total size 122 bytes but read 118 bytes!
Chunk 'CPUX' size 8 (8)
Chunk 'CPUX' total size 8 bytes but read 4 bytes!
Chunk 'DSK0' size 31 (31)
Chunk 'DSK1' size 31 (31)
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 87 (87)
error
Chunk 'BLTX' total size 87 bytes but read 89 bytes!
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAB' size 31 (31)
Chunk 'KEYB' size 15 (15)
Chunk 'EXPB' size 65 (65)
Chunk 'EXPB' total size 65 bytes but read 74 bytes!
Chunk 'EXPB' size 68 (68)
Chunk 'EXPB' total size 68 bytes but read 77 bytes!
Chunk 'EXPB' size 55 (55)
Chunk 'EXPB' size 51 (51)
Chunk 'EXPB' size 50 (50)
Chunk 'EXPA' size 16 (16)
Chunk 'EXPA' total size 16 bytes but read 20 bytes!
Chunk 'CRAM' size 2097152 (2097152)
Chunk 'FRAM' size 4194304 (4194304)
Chunk 'BORO' size 9072 (9072)
Chunk 'ROM ' size 108 (108)
ROM 'Kickstart 39.106' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v3.0 (A1200) rev 39.106 (512k).rom'
Chunk 'FSYC' size 20 (20)
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
Chunk 'FSYP' size 32 (32)
Chunk 'FSYS' size 462 (462)
FS: restoring 6 locks
FS: Lock (root) 'DH0' ('/tmp/')
FS: Lock 'devs' ('/tmp//devs')
FS: Lock 'c' ('/tmp//c')
FS: base aino found '/tmp//c' ('c/')
FS: Lock 'WHDLoad' ('/tmp//c/WHDLoad')
FS: Lock 's' ('/tmp//s')
FS: base aino found '/tmp//s' ('s/')
FS: Lock 'startup-sequence' ('/tmp//s/startup-sequence')
FS: restoring 2 open files
FS: open file 's/startup-sequence' ('/tmp//s/startup-sequence'), pos=193
FS: restored file 's/startup-sequence' size changed! orig=193, now=192!!
FS: restored filepos larger than size of file 's/startup-sequence'!! 193 > 192
FS: open file 'c/WHDLoad' ('/tmp//c/WHDLoad'), pos=144902
FS: restored file 'c/WHDLoad' size changed! orig=144902, now=144978!!
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/tmp/' restored
Chunk 'FSYP' size 130 (130)
Chunk 'FSYS' size 222 (222)
FS: restoring 2 locks
FS: Lock (root) 'DH3' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip')
*** FS: Directory '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C' missing!
FS: Lock 'C' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/boot-data.zip' restored
Chunk 'FSYP' size 120 (120)
Chunk 'FSYS' size 224 (224)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods' missing!
FS: Lock 'Gods' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
Chunk '' size 0 (0)
unknown chunk '' size 0 bytes
Chunk '', size 0 bytes was not accepted!
Building CPU, 45912 opcodes (2 0 1)
JIT popallspace: 0xac6a0000-0xac6a0800
CPU=68020, FPU=0, JIT=0. 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 0001D2F2. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
Your Amiga program just did something terribly stupid 76656C2E PC=0001D2FC
76656C0E  0000 0000 0000 0000 0000 0000 0000 0000
76656C1E  0000 0000 0000 0000 0000 0000 0000 0000
76656C2E  0000 0000 0000 0000 0000 0000 0000 0000
76656C3E  0000 0000 0000 0000 0000 0000 0000 0000
76656C4E  0000 0000 0000 0000 0000 0000 0000 0000
0001D2DC  0E10 D040 3381 0000 E248 225F 4E75 2F08
0001D2EC  41F8 0E10 3200 D241 3230 1000 205F 4E75
0001D2FC  B07A FD5A 6CFA 48E7 C082 2038 0DE4 2238
0001D30C  0DEA 21C1 0DE4 21C0 0DEA 3038 0DE8 3238
0001D31C  0DEE 31C1 0DE8 31C0 0DEE 2038 0E64 2238
CPU halted: reason = 3 PC=0001d2fc
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*201) Native
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
Drag0nFly commented 3 years ago

Tried another game which recently was played through (Shadow of the Beast II), and for which I have a lot of state saves. Similar issue, although it causes graphical corruption before the emulated cpu is halted –

Chunk 'FSYP' size 142 (142)
Chunk 'FSYS' size 248 (248)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/ShadowOfTheBeast2_v1.4_1359.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/ShadowOfTheBeast2_v1.4_1359.lha/ShadowOfTheBeast2' missing!
FS: Lock 'ShadowOfTheBeast2' ('/home/pi/RetroPie/roms/amiga/ShadowOfTheBeast2_v1.4_1359.lha/ShadowOfTheBeast2')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/ShadowOfTheBeast2_v1.4_1359.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
Chunk '' size 0 (0)
unknown chunk '' size 0 bytes
Chunk '', size 0 bytes was not accepted!
Building CPU, 45912 opcodes (2 0 1)
JIT popallspace: 0xac6ff000-0xac6ff800
CPU=68020, FPU=0, JIT=0. 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 00009D46. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
CPU halted: reason = 10 PC=0000024e
Drag0nFly commented 3 years ago

Same issue with the -dev/4.2 beta branch (only difference being that the screen resolution in WB is incorrect)

midwan commented 3 years ago

@Drag0nFly Can you please try the following:

Does that work? It could be that only old savestates don't work, for example.

Drag0nFly commented 3 years ago

Not to argue, but creating a new savestate would not be a proper solution. I need it to load the existing savestates (which are not that old)

Otherwise, all progress on numerous games are lost!

I assume it was commit 4101bf5c9e989db93540844176bf849207b7e4b4 that disabled this behaviour (curious, as saving and loading of states worked perfectly on my setup, when running games off of EmulationStation which primarily uses WHDLoad)

Date:   Fri Jan 1 18:18:17 2021 +0100

    Fix #725: Do not allow savestates when HDDs are mounted
Drag0nFly commented 3 years ago

btw.-I never use savestates when running a full WB setup like the person who reported #725

However, since WHDLoad technically also mounts HDDs, it sounds like it is related, but I would assume that this is handled differently, considering how many launchers rely on WHDLoad.

I will test behaviour with the new change later on when I am back. But again–it is extremely unfortunate if the savestates would have to be recreated. It kind of defeats the purpose for actual gaming usage, as one risks these being incompatible with a simple Amiberry upgrade.

midwan commented 3 years ago

First we have to identify what/where the problem is, then we will work on a solution. There were custom chipset changes merged from WinUAE, which might have affected Savestates that were saved before. We need to figure out if those are related or not, before we move on to the next step...

Drag0nFly commented 3 years ago

Sure, it is understandable, but I felt I had to mention this for clarity.

I'll let you know as soon as I've performed a recent test with the -dev branch (both testing existing saves, and new ones). (Actually, I'll do that with the 2021-06-05 git version as well, to see if it behaves differently from the newer one, as I am just using WHDLoad launchers for the games from within ES.)

midwan commented 3 years ago

The dev branch is still WIP and should not be considered ready for release - it's best to test this on the master branch, instead.

Drag0nFly commented 3 years ago

Good point. Frankly, I am not 100% sure whether it is the master or the dev branch. I simply removed the version tag in the script that handles this in RetroPie, i.e–

function sources_amiberry() {
    gitPullOrClone "$md_build" https://github.com/midwan/amiberry
    # use our default optimisation level
    sed -i "s/-Ofast//" "$md_build/Makefile"
}

Which should fetch the master branch. I had another source location for the -dev branch, but I see that binary is not currently used atm.

midwan commented 3 years ago

Yeap, just getting the latest from the master branch will be enough for this case. The version will still show 4.1.4 as before, because I haven't updated it yet. I wanted to include a few more fixes before it's bumped to 4.1.5. I started with the savestates, so it would be good to include a fix for this specific one, if possible, as well.

Drag0nFly commented 3 years ago

Well, this probably did not come as much of a surprise :p, but the 2021-06-05 master branch version only presented the “Savestates do not currently work with HDDs” error when attempting to save.

Guess it's time to compile the most recent master branch version and report back...

Drag0nFly commented 3 years ago

Ok–creating new savestates, and loading them again, work with the most recent master branch version. Tested just now with “Flood”. I recreated the logfile logging to capture this (curiously, it gets removed after an upgrade), but I guess it is of limited interest.

STATESAVE (/opt/retropie/emulators/amiberry/savestates/Flood_v1.2_0504-1.uss):
Chunk 'ASF ' chunk size 30 (18)
SAVECYCLES 562A7800
Chunk 'CYCS' chunk size 32 (20)
Chunk 'CPU ' chunk size 134 (122)
Chunk 'CPUX' chunk size 16 (4)
Chunk 'DSK0' chunk size 43 (31)
Chunk 'DSK1' chunk size 43 (31)
Chunk 'DSK2' chunk size 43 (31)
Chunk 'DSK3' chunk size 43 (31)
Chunk 'DISK' chunk size 29 (17)
Chunk 'CHIP' chunk size 368 (356)
Chunk 'CHPX' chunk size 57 (45)
Chunk 'BLTX' chunk size 102 (90)
Chunk 'BLIT' chunk size 16 (4)
Chunk 'CINP' chunk size 24 (12)
Chunk 'SPR0' chunk size 37 (25)
Chunk 'SPR1' chunk size 37 (25)
Chunk 'SPR2' chunk size 37 (25)
Chunk 'SPR3' chunk size 37 (25)
Chunk 'SPR4' chunk size 37 (25)
Chunk 'SPR5' chunk size 37 (25)
Chunk 'SPR6' chunk size 37 (25)
Chunk 'SPR7' chunk size 37 (25)
Chunk 'AUD0' chunk size 37 (25)
Chunk 'AUD1' chunk size 37 (25)
Chunk 'AUD2' chunk size 37 (25)
Chunk 'AUD3' chunk size 37 (25)
Chunk 'CIAA' chunk size 43 (31)
Chunk 'CIAB' chunk size 43 (31)
Chunk 'KEYB' chunk size 27 (15)
Chunk 'EXPB' chunk size 86 (74)
Chunk 'EXPB' chunk size 89 (77)
Chunk 'EXPB' chunk size 67 (55)
Chunk 'EXPB' chunk size 63 (51)
Chunk 'EXPB' chunk size 62 (50)
Chunk 'EXPA' chunk size 32 (20)
Chunk 'CRAM' chunk size 2097164 (183677)
Chunk 'FRAM' chunk size 4194316 (675319)
Chunk 'BORO' chunk size 11824 (7696)
Chunk 'ROM ' chunk size 120 (108)
Chunk 'FSYC' chunk size 32 (20)
Chunk 'FSYP' chunk size 44 (32)
FS_FILESYS: 'DH0' 'DH0'
FSSAVE: 'DH0'
6 open locks
uniq=0 0 s=4 e=0 d=1 'DH0' '/tmp/'
->'DH0'
uniq=2 0 s=1 e=0 d=1 's' '/tmp//s'
->'s'
uniq=4 0 s=1 e=0 d=0 'startup-sequence' '/tmp//s/startup-sequence'
->'s/startup-sequence'
uniq=3 0 s=2 e=0 d=1 'c' '/tmp//c'
->'c'
uniq=8 0 s=1 e=0 d=0 'WHDLoad' '/tmp//c/WHDLoad'
->'c/WHDLoad'
uniq=1 0 s=1 e=0 d=1 'devs' '/tmp//devs'
->'devs'
2 open files
'c/WHDLoad' uniq=3 size=144978 seekpos=144978 mode=0 dosmode=12
's/startup-sequence' uniq=1 size=196 seekpos=196 mode=0 dosmode=12
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 474 (462)
Chunk 'FSYP' chunk size 142 (130)
FS_FILESYS: 'DH3' 'DH3'
FSSAVE: 'DH3'
2 open locks
uniq=0 0 s=0 e=0 d=1 'DH3' '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip'
->'DH3'
uniq=5 0 s=1 e=0 d=1 'C' '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C'
->'C'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 234 (222)
Chunk 'FSYP' chunk size 130 (118)
FS_FILESYS: 'DH1' 'Games'
FSSAVE: 'DH1'
2 open locks
uniq=0 0 s=0 e=0 d=1 'Games' '/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha'
->'Games'
uniq=7 0 s=2 e=0 d=1 'Flood' '/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha/Flood'
->'Flood'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 236 (224)
Chunk 'FSYP' chunk size 136 (124)
FS_FILESYS: 'DH2' 'Saves'
FSSAVE: 'DH2'
1 open locks
uniq=0 0 s=0 e=0 d=1 'Saves' '/opt/retropie/emulators/amiberry/whdboot/save-data/'
->'Saves'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 201 (189)
Chunk 'GAYL' chunk size 18 (6)
Chunk 'CONF' chunk size 12916 (3432)
Save of '/opt/retropie/emulators/amiberry/savestates/Flood_v1.2_0504-1.uss' complete
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
SNDRATE 592.0*227.0*26.393581=3546875.041565
PAL mode V=26.3936Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 591*26.3936 = 15598.6064 / 26.4 = 591
STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Flood_v1.2_0504.uss'
Saved with: 'UAE 4.1.4', description: '...'
Chunk 'CYCS' size 20 (20)
RESTORECYCLES 9F74E000
Chunk 'CPU ' size 122 (122)
CPU: 68EC020, PC=00013E4A
Chunk 'CPUX' size 4 (4)
Chunk 'DSK0' size 31 (31)
Chunk 'DSK1' size 31 (31)
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 90 (90)
error
Chunk 'BLTX' total size 90 bytes but read 89 bytes!
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAB' size 31 (31)
Chunk 'KEYB' size 15 (15)
Chunk 'EXPB' size 74 (74)
Chunk 'EXPB' size 77 (77)
Chunk 'EXPB' size 55 (55)
Chunk 'EXPB' size 51 (51)
Chunk 'EXPB' size 50 (50)
Chunk 'EXPA' size 20 (20)
Chunk 'CRAM' size 170352 (2097152)
Chunk 'FRAM' size 675315 (4194304)
Chunk 'BORO' size 7700 (11812)
Chunk 'ROM ' size 108 (108)
ROM 'Kickstart 39.106' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v3.0 (A1200) rev 39.106 (512k).rom'
Chunk 'FSYC' size 20 (20)
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
Chunk 'FSYP' size 32 (32)
Chunk 'FSYS' size 462 (462)
FS: restoring 6 locks
FS: Lock (root) 'DH0' ('/tmp/')
FS: Lock 's' ('/tmp//s')
FS: base aino found '/tmp//s' ('s/')
FS: Lock 'startup-sequence' ('/tmp//s/startup-sequence')
FS: Lock 'c' ('/tmp//c')
FS: base aino found '/tmp//c' ('c/')
FS: Lock 'WHDLoad' ('/tmp//c/WHDLoad')
FS: Lock 'devs' ('/tmp//devs')
FS: restoring 2 open files
FS: open file 'c/WHDLoad' ('/tmp//c/WHDLoad'), pos=144978
FS: open file 's/startup-sequence' ('/tmp//s/startup-sequence'), pos=196
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/tmp/' restored
Chunk 'FSYP' size 130 (130)
Chunk 'FSYS' size 222 (222)
FS: restoring 2 locks
FS: Lock (root) 'DH3' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip')
*** FS: Directory '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C' missing!
FS: Lock 'C' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/boot-data.zip' restored
Chunk 'FSYP' size 118 (118)
Chunk 'FSYS' size 224 (224)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha/Flood' missing!
FS: Lock 'Flood' ('/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha/Flood')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
Chunk 'CONF' size 3436 (12904)
Chunk 'END ' size 0 (0)
Building CPU, 45912 opcodes (2 1 1)
JIT popallspace: 0xac6ff000-0xac6ff800
CPU=68020, FPU=0, JIT=0. prefetch 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 00013E40. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
SERIAL: period=372, baud=9600, hsyncs=14, bits=8, PC=13e40
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
STATESAVE (/opt/retropie/emulators/amiberry/savestates/Flood_v1.2_0504-1.uss):
Chunk 'ASF ' chunk size 30 (18)
SAVECYCLES EEFBC200
Chunk 'CYCS' chunk size 32 (20)
Chunk 'CPU ' chunk size 134 (122)
Chunk 'CPUX' chunk size 16 (4)
Chunk 'DSK0' chunk size 43 (31)
Chunk 'DSK1' chunk size 43 (31)
Chunk 'DSK2' chunk size 43 (31)
Chunk 'DSK3' chunk size 43 (31)
Chunk 'DISK' chunk size 29 (17)
Chunk 'CHIP' chunk size 368 (356)
Chunk 'CHPX' chunk size 57 (45)
Chunk 'BLTX' chunk size 102 (90)
Chunk 'BLIT' chunk size 16 (4)
Chunk 'CINP' chunk size 24 (12)
Chunk 'SPR0' chunk size 37 (25)
Chunk 'SPR1' chunk size 37 (25)
Chunk 'SPR2' chunk size 37 (25)
Chunk 'SPR3' chunk size 37 (25)
Chunk 'SPR4' chunk size 37 (25)
Chunk 'SPR5' chunk size 37 (25)
Chunk 'SPR6' chunk size 37 (25)
Chunk 'SPR7' chunk size 37 (25)
Chunk 'AUD0' chunk size 37 (25)
Chunk 'AUD1' chunk size 37 (25)
Chunk 'AUD2' chunk size 37 (25)
Chunk 'AUD3' chunk size 37 (25)
Chunk 'CIAA' chunk size 43 (31)
Chunk 'CIAB' chunk size 43 (31)
Chunk 'KEYB' chunk size 27 (15)
Chunk 'EXPB' chunk size 86 (74)
Chunk 'EXPB' chunk size 89 (77)
Chunk 'EXPB' chunk size 67 (55)
Chunk 'EXPB' chunk size 63 (51)
Chunk 'EXPB' chunk size 62 (50)
Chunk 'EXPA' chunk size 32 (20)
Chunk 'CRAM' chunk size 2097164 (181098)
Chunk 'FRAM' chunk size 4194316 (675309)
Chunk 'BORO' chunk size 11824 (7696)
Chunk 'ROM ' chunk size 120 (108)
Chunk 'FSYC' chunk size 32 (20)
Chunk 'FSYP' chunk size 44 (32)
FS_FILESYS: 'DH0' 'DH0'
FSSAVE: 'DH0'
6 open locks
uniq=0 0 s=0 e=0 d=1 'DH0' '/tmp/'
->'DH0'
uniq=1 0 s=1 e=0 d=1 'devs' '/tmp//devs'
->'devs'
uniq=3 0 s=2 e=0 d=1 'c' '/tmp//c'
->'c'
uniq=8 0 s=1 e=0 d=0 'WHDLoad' '/tmp//c/WHDLoad'
->'c/WHDLoad'
uniq=2 0 s=1 e=0 d=1 's' '/tmp//s'
->'s'
uniq=4 0 s=1 e=0 d=0 'startup-sequence' '/tmp//s/startup-sequence'
->'s/startup-sequence'
2 open files
's/startup-sequence' uniq=1 size=196 seekpos=196 mode=0 dosmode=12
'c/WHDLoad' uniq=3 size=144978 seekpos=144978 mode=0 dosmode=12
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 474 (462)
Chunk 'FSYP' chunk size 142 (130)
FS_FILESYS: 'DH3' 'DH3'
FSSAVE: 'DH3'
2 open locks
uniq=0 0 s=0 e=0 d=1 'DH3' '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip'
->'DH3'
uniq=5 0 s=1 e=0 d=1 'C' '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C'
->'C'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 234 (222)
Chunk 'FSYP' chunk size 130 (118)
FS_FILESYS: 'DH1' 'Games'
FSSAVE: 'DH1'
2 open locks
uniq=0 0 s=0 e=0 d=1 'Games' '/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha'
->'Games'
uniq=7 0 s=2 e=0 d=1 'Flood' '/home/pi/RetroPie/roms/amiga/Flood_v1.2_0504.lha/Flood'
->'Flood'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 236 (224)
Chunk 'FSYP' chunk size 136 (124)
FS_FILESYS: 'DH2' 'Saves'
FSSAVE: 'DH2'
1 open locks
uniq=0 0 s=0 e=0 d=1 'Saves' '/opt/retropie/emulators/amiberry/whdboot/save-data/'
->'Saves'
0 open files
0 notify requests
0 exkeys
END
Chunk 'FSYS' chunk size 201 (189)
Chunk 'GAYL' chunk size 18 (6)
Chunk 'CONF' chunk size 12917 (3430)
Save of '/opt/retropie/emulators/amiberry/savestates/Flood_v1.2_0504-1.uss' complete
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Drag0nFly commented 3 years ago

Same issue as before with existing savestates, unfortunately. “Your Amiga program just did something terribly stupid.”, followed by a “CPU halted”.

Full log:

Amiberry v4.1.4 (2021-06-05) Logfile

Allocated 16 MB for 24-bit area (0x20000000) and 1152 MB for Z3 and RTG at real address (0x60000000 - 0xa8000020)
Sorting devices and modes...
0: 640x400, 8-bit (50,60)
1: 640x400, 16-bit (50,60)
2: 640x400, 32-bit (50,60)
3: 640x480, 8-bit (50,60)
4: 640x480, 16-bit (50,60)
5: 640x480, 32-bit (50,60)
6: 720x400, 8-bit (50,60)
7: 720x400, 16-bit (50,60)
8: 720x400, 32-bit (50,60)
9: 800x480, 8-bit (50,60)
10: 800x480, 16-bit (50,60)
11: 800x480, 32-bit (50,60)
12: 800x600, 8-bit (50,60)
13: 800x600, 16-bit (50,60)
14: 800x600, 32-bit (50,60)
15: 960x540, 8-bit (50,60)
16: 960x540, 16-bit (50,60)
17: 960x540, 32-bit (50,60)
18: 1024x768, 8-bit (50,60)
19: 1024x768, 16-bit (50,60)
20: 1024x768, 32-bit (50,60)
21: 1280x720, 8-bit (50,60)
22: 1280x720, 16-bit (50,60)
23: 1280x720, 32-bit (50,60)
24: 1280x800, 8-bit (50,60)
25: 1280x800, 16-bit (50,60)
26: 1280x800, 32-bit (50,60)
27: 1280x1024, 8-bit (50,60)
28: 1280x1024, 16-bit (50,60)
29: 1280x1024, 32-bit (50,60)
30: 1360x768, 8-bit (50,60)
31: 1360x768, 16-bit (50,60)
32: 1360x768, 32-bit (50,60)
33: 1366x768, 8-bit (50,60)
34: 1366x768, 16-bit (50,60)
35: 1366x768, 32-bit (50,60)
36: 1680x1050, 8-bit (50,60)
37: 1680x1050, 16-bit (50,60)
38: 1680x1050, 32-bit (50,60)
39: 1920x1080, 8-bit (50,60)
40: 1920x1080, 16-bit (50,60)
41: 1920x1080, 32-bit (50,60)
42 display modes.
Desktop: W=800 H=600 B=24 HZ=0. CXVS=800 CYVS=600
clipboard_init
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
Controller init_kb_from_retroarch(0): Found
Controller init_kb_from_retroarch(1): Not found
KS ver = 34 (0x22)
Stored port 0/0 d=0: added 200 0
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Port0: ID 'mouse' matched
Stored port 1/0 d=0: added 100 0
Stored port 1/0 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: ID 'joy0' matched
Port2: NONE
Port3: NONE
target_cfgfile_load(): load file /opt/retropie/emulators/amiberry/conf/default.uae
load config '/opt/retropie/emulators/amiberry/conf/default.uae':3
KS ver = 39 (0x27)
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Port0: COMBO 'System mouse' + 'MOUSE0' matched
Stored port 1/0 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: COMBO 'Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller' + 'JOY0' matched
Port2: NONE
Port3: NONE
KS ver = 39 (0x27)
Stored port 0/0 d=1: added 200 0 System mouse MOUSE0
Port0: COMBO 'System mouse' + 'MOUSE0' matched
Stored port 1/0 d=1: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: COMBO 'Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller' + 'JOY0' matched
Port2: NONE
Port3: NONE
WHDLoad... /home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha
WHDBooter Launched
SymLink Kickstart ROMs for Booter
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick33180.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick34005.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick37175.A500
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick39106.A1200
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40063.A600
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40068.A1200
Making SymLink for Kickstart ROM: /opt/retropie/emulators/amiberry/whdboot/save-data/Kickstarts/kick40068.A4000
WHDBooter - Host: A600 ROM Available
WHDBooter - Loading whdload_db.xml
WHDBooter - Searching whdload_db.xml for Gods_v2.3.1_0666
WHDBooter - Game H/W Settings:

        PRIMARY_CONTROL=JOYSTICK
        PORT0=JOY
        PORT1=JOY
        FAST_COPPER=FALSE
        JIT=FALSE
        SCREEN_AUTOHEIGHT=FALSE
        SCREEN_HEIGHT=400
        SCREEN_CENTERH=SMART
        SCREEN_CENTERV=SMART

WHDBooter - Default Slave: Gods.Slave
WHDBooter - SubPath:  Gods
WHDBooter - Libraries:  Gods
WHDBooter - Created Startup-Sequence

IF NOT EXISTS WHDLoad
DH3:C/Assign C: DH3:C/ ADD
ENDIF
CD "Games:Gods"
WHDLoad SLAVE="Games:Gods/Gods.Slave" PRELOAD NOWRITECACHE NOREQ SPLASHDELAY=0 SAVEPATH=Saves:Savegames/ SAVEDIR="Gods"

WHDBooter - Saved Auto-Startup to /tmp/s/startup-sequence
WHDBooter Option (Joystick Control): joyport0
WHDBooter Option (Joystick Control): joyport1
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 100 0
Stored port 0/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port0: ID 'joy2' matched
Stored port 1/1 d=0: added 100 0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Port1: ID 'joy1' matched
Port2: NONE
Port3: NONE
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
RTAREA located at 00F00000
mapped_malloc(): 0x00f00000 - 0x00f10000 (0x20f00000 - 0x20f10000) -> UAE Boot ROM (rtarea)
TRAP_ENTRY = 00f01eda
mapped_malloc(): 0x00200000 - 0x00600000 (0x20200000 - 0x20600000) -> Fast memory (*)
mapped_malloc(): 0x00f80000 - 0x01000000 (0x20f80000 - 0x21000000) -> Kickstart ROM (kick)
mapped_malloc(): 0x00000000 - 0x00200000 (0x20000000 - 0x20200000) -> Chip memory (chip)
ROM loader.. (<none>)
Known ROM 'KS ROM v3.0 (A1200)' loaded
ROM loader end
memory init end
No disk in drive 0.
1867 CPU functions
SDL2: Set window not to minimize on focus loss
uae_start_thread "display thread" function at 0x242e20 arg (nil)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Building CPU, 45912 opcodes (2 1 1)
JIT popallspace: 0xac6ff000-0xac6ff800
CPU=68020, FPU=0, JIT=0. prefetch 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 00000000. Chipset mask = 00000003
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+0) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*135) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
uae_start_thread "ide" function at 0x160100 arg 0x327c2a4
Card 0: skipping autoconfig (not autoconfig)
Card 2: skipping autoconfig (not autoconfig)
hardreset, memory cleared
SNDRATE 312.0*227.0*50.080410=3546894.958099
SDL Controller/Joystick device added or removed! Re-running import joysticks...
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
SNDRATE 312.0*227.0*50.080410=3546894.958099
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+0) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*230) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
SERIAL: period=372, baud=9600, hsyncs=14, bits=8, PC=f8016e
Card 4: Z2 0x00200000 4096K RAM Fast memory
mapped_malloc(): 0x00e90000 - 0x00ea0000 (0x20e90000 - 0x20ea0000) -> Filesystem autoconfig (*)
Card 5: Z2 0x00e90000   64K ROM Filesystem autoconfig
filesystem: diagentry 00200098 configdev 00000c40
SNDRATE 312.0*227.0*50.080410=3546894.958099
PAL mode V=50.0804Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*200) Native
RTGFREQ: 312*50.0804 = 15625.0879 / 50.1 = 312
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Mounting uaehf.device:0 0 (0):
FS: mounted virtual unit DH0 (/tmp/)
Mounting uaehf.device:0 1 (0):
FS: mounted virtual unit DH3 (/opt/retropie/emulators/amiberry/whdboot/boot-data.zip)
Mounting uaehf.device:0 2 (0):
FS: mounted virtual unit DH1 (/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha)
Mounting uaehf.device:0 3 (0):
FS: mounted virtual unit DH2 (/opt/retropie/emulators/amiberry/whdboot/save-data/)
FS: DH0 (flags=00000002,E=0,ED=1,EF=0,native='/tmp/') starting..
FS: Games (flags=00000004,E=0,ED=0,EF=1,native='/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha') starting..
FS: Saves (flags=00000002,E=0,ED=1,EF=0,native='/opt/retropie/emulators/amiberry/whdboot/save-data/') starting..
FS: DH3 (flags=00000004,E=0,ED=0,EF=1,native='/opt/retropie/emulators/amiberry/whdboot/boot-data.zip') starting..
Controller #0: Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller
      GUID: 03000000f0250000c283000010010000
      Axes: 4
      Buttons: 13
      Balls: 0
Controller #0 does not have a mapping available
Retroarch controller cfg file found, using that for mapping
Controller Detection: input_enable_hotkey_btn : 8
Controller Detection: input_exit_emulator_btn : 9
Controller Detection: input_reset_btn : 1
Controller Detection: input_b_btn : 1
Controller Detection: input_a_btn : 2
Controller Detection: input_y_btn : 3
Controller Detection: input_x_btn : 0
Controller Detection: input_select_btn : 8
Controller Detection: input_menu_toggle_btn : 0
Controller Detection: input_start_btn : 9
Controller Detection: input_l3_btn : 10
Controller Detection: input_r3_btn : 11
Controller Detection: input_l_btn : 4
Controller Detection: input_r_btn : 5
Controller Detection: input_up_btn : -1
Controller Detection: input_down_btn : -1
Controller Detection: input_left_btn : -1
Controller Detection: input_right_btn : -1
Controller Detection: input_l_x_plus_axis : 0
Controller Detection: input_l_y_plus_axis : 1
Controller Detection: input_r_x_plus_axis : 2
Controller Detection: input_r_y_plus_axis : 3
Controller Detection: input_l2_axis : -1
Controller Detection: input_r2_axis : -1
Controller Detection: count_hats : 1
Controller Detection: invert left  y axis: 0
Controller Detection: invert left  x axis: 0
Controller Detection: invert right y axis: 0
Controller Detection: invert right x axis: 0
Checking for inserted/removed devices..
Input remapping done. Changed=0.
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/1 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
SNDRATE 592.0*227.0*26.393581=3546875.041565
PAL mode V=26.3936Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 591*26.3936 = 15598.6064 / 26.4 = 591
STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Gods_v2.3.1_0666.uss'
Saved with: 'UAE 4.4.0', description: '...'
Chunk 'CPU ' size 122 (122)
CPU: 68EC020, PC=0001D2FC
Chunk 'CPU ' total size 122 bytes but read 118 bytes!
Chunk 'CPUX' size 8 (8)
Chunk 'CPUX' total size 8 bytes but read 4 bytes!
Chunk 'DSK0' size 31 (31)
Chunk 'DSK1' size 31 (31)
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 87 (87)
error
Chunk 'BLTX' total size 87 bytes but read 89 bytes!
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAB' size 31 (31)
Chunk 'KEYB' size 15 (15)
Chunk 'EXPB' size 65 (65)
Chunk 'EXPB' total size 65 bytes but read 74 bytes!
Chunk 'EXPB' size 68 (68)
Chunk 'EXPB' total size 68 bytes but read 77 bytes!
Chunk 'EXPB' size 55 (55)
Chunk 'EXPB' size 51 (51)
Chunk 'EXPB' size 50 (50)
Chunk 'EXPA' size 16 (16)
Chunk 'EXPA' total size 16 bytes but read 20 bytes!
Chunk 'CRAM' size 2097152 (2097152)
Chunk 'FRAM' size 4194304 (4194304)
Chunk 'BORO' size 9072 (9072)
Chunk 'ROM ' size 108 (108)
ROM 'Kickstart 39.106' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v3.0 (A1200) rev 39.106 (512k).rom'
Chunk 'FSYC' size 20 (20)
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
Chunk 'FSYP' size 32 (32)
Chunk 'FSYS' size 462 (462)
FS: restoring 6 locks
FS: Lock (root) 'DH0' ('/tmp/')
FS: Lock 'devs' ('/tmp//devs')
FS: Lock 'c' ('/tmp//c')
FS: base aino found '/tmp//c' ('c/')
FS: Lock 'WHDLoad' ('/tmp//c/WHDLoad')
FS: Lock 's' ('/tmp//s')
FS: base aino found '/tmp//s' ('s/')
FS: Lock 'startup-sequence' ('/tmp//s/startup-sequence')
FS: restoring 2 open files
FS: open file 's/startup-sequence' ('/tmp//s/startup-sequence'), pos=193
FS: restored file 's/startup-sequence' size changed! orig=193, now=192!!
FS: restored filepos larger than size of file 's/startup-sequence'!! 193 > 192
FS: open file 'c/WHDLoad' ('/tmp//c/WHDLoad'), pos=144902
FS: restored file 'c/WHDLoad' size changed! orig=144902, now=144978!!
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/tmp/' restored
Chunk 'FSYP' size 130 (130)
Chunk 'FSYS' size 222 (222)
FS: restoring 2 locks
FS: Lock (root) 'DH3' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip')
*** FS: Directory '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C' missing!
FS: Lock 'C' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/boot-data.zip' restored
Chunk 'FSYP' size 120 (120)
Chunk 'FSYS' size 224 (224)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods' missing!
FS: Lock 'Gods' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
Chunk '' size 0 (0)
unknown chunk '' size 0 bytes
Chunk '', size 0 bytes was not accepted!
Building CPU, 45912 opcodes (2 0 1)
JIT popallspace: 0xac6ff000-0xac6ff800
CPU=68020, FPU=0, JIT=0. 24-bit
clipboard: reset (00000000)
memory init end
uae_start_thread "filesys" function at 0x12aca0 arg 0x3123898
uae_start_thread "filesys" function at 0x12aca0 arg 0x312f060
uae_start_thread "filesys" function at 0x12aca0 arg 0x313a828
uae_start_thread "filesys" function at 0x12aca0 arg 0x3145ff0
Reset at 0001D306. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
Your Amiga program just did something terribly stupid 76656C2E PC=0001D2FC
76656C0E  0000 0000 0000 0000 0000 0000 0000 0000
76656C1E  0000 0000 0000 0000 0000 0000 0000 0000
76656C2E  0000 0000 0000 0000 0000 0000 0000 0000
76656C3E  0000 0000 0000 0000 0000 0000 0000 0000
76656C4E  0000 0000 0000 0000 0000 0000 0000 0000
0001D2DC  0E10 D040 3381 0000 E248 225F 4E75 2F08
0001D2EC  41F8 0E10 3200 D241 3230 1000 205F 4E75
0001D2FC  B07A FD5A 6CFA 48E7 C082 2038 0DE4 2238
0001D30C  0DEA 21C1 0DE4 21C0 0DEA 3038 0DE8 3238
0001D31C  0DEE 31C1 0DE8 31C0 0DEE 2038 0E64 2238
CPU halted: reason = 3 PC=0001d2fc
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
Buffer 0 size (720*201) Native
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
midwan commented 3 years ago

Just to clarify then:

Is that correct? If so, do you happen to know the last version that works for the old savestates? It would help in narrowing down what changed since then.

Drag0nFly commented 3 years ago

That is correct.

As a matter of fact, I have been trying to guess which version I created those with, so that I could revert and start playing Amiga games again.

Is there a way to determine this from either logs somewhere, or from the .uss savestate file itself?

midwan commented 3 years ago

Try 3.3.x as a first test to see. Then start going forward one release at a time. I would expect it's one of the major versions released that changed this...

midwan commented 3 years ago

Also, if you could please attach a savestate from an older version here, it might help for analysis. If I can make that work, it should work for all of them.

Drag0nFly commented 3 years ago

Attached one .uss here. Let me know if my braindead OSX installation was able to do this correctly, as it automatically excludes files with an extension it does not know (hence renamed to .txt)

Gods_v2.3.1_0666-1.uss.txt

Drag0nFly commented 3 years ago

v3.3 works. Debug output directly after loading savestate follows below:

Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/1 d=0: added 100 3 RetroArch Keyboard as Joystick [#1] JOY0
Stored port 1/1 d=0: added 101 3 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY1
Stored port 0/1 d=0: added 100 3 RetroArch Keyboard as Joystick [#1] JOY0
Stored port 1/1 d=0: added 101 3 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY1
Stored port 0/1 d=0: added 100 3 RetroArch Keyboard as Joystick [#1] JOY0
Stored port 1/1 d=0: added 101 3 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY1
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 60.0 = 259
SNDRATE 592.0*227.0*26.393581=3546875.041565
PAL mode V=26.3936Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 591*26.3936 = 15598.6064 / 60.0 = 259
STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Gods_v2.3.1_0666.uss'
Saved with: 'UAE 4.4.0', description: '...'
Chunk 'CPU ' size 122 (122)
CPU: 68EC020, PC=0001D2FC
Chunk 'CPUX' size 8 (8)
Chunk 'DSK0' size 31 (31)
Chunk 'DSK1' size 31 (31)
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 87 (87)
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAA' total size 31 bytes but read 30 bytes!
Chunk 'CIAB' size 31 (31)
Chunk 'CIAB' total size 31 bytes but read 30 bytes!
Chunk 'KEYB' size 15 (15)
Chunk 'EXPB' size 65 (65)
Chunk 'EXPB' size 68 (68)
Chunk 'EXPB' size 55 (55)
Chunk 'EXPB' size 51 (51)
Chunk 'EXPB' size 50 (50)
Chunk 'EXPA' size 16 (16)
Chunk 'CRAM' size 2097152 (2097152)
Chunk 'FRAM' size 4194304 (4194304)
Chunk 'BORO' size 9072 (9072)
Chunk 'ROM ' size 108 (108)
ROM 'Kickstart 39.106' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v3.0 (A1200) rev 39.106 (512k).rom'
Chunk 'FSYC' size 20 (20)
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
Chunk 'FSYP' size 32 (32)
Chunk 'FSYS' size 462 (462)
FS: restoring 6 locks
FS: Lock (root) 'DH0' ('/tmp/')
FS: Lock 'devs' ('/tmp//devs')
FS: Lock 'c' ('/tmp//c')
FS: base aino found '/tmp//c' ('c/')
FS: Lock 'WHDLoad' ('/tmp//c/WHDLoad')
FS: Lock 's' ('/tmp//s')
FS: base aino found '/tmp//s' ('s/')
FS: Lock 'startup-sequence' ('/tmp//s/startup-sequence')
FS: restoring 2 open files
FS: open file 's/startup-sequence' ('/tmp//s/startup-sequence'), pos=193
FS: open file 'c/WHDLoad' ('/tmp//c/WHDLoad'), pos=144902
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/tmp/' restored
Chunk 'FSYP' size 130 (130)
Chunk 'FSYS' size 222 (222)
FS: restoring 2 locks
FS: Lock (root) 'DH3' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip')
*** FS: Directory '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C' missing!
FS: Lock 'C' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/boot-data.zip' restored
Chunk 'FSYP' size 120 (120)
Chunk 'FSYS' size 224 (224)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods' missing!
FS: Lock 'Gods' ('/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha/Gods')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/Gods_v2.3.1_0666.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
JIT popallspace: 0xaa072000-0xaa072200
CPU=68020, FPU=0, JIT=0. prefetch 24-bit
clipboard: reset (00000000)
memory init end
Reset at 0001D2FC. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 60.0 = 259
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 60.0 = 259
Audio 0 DMA wait hack: DISABLED. OFF=0001ff42, ON=0001ff70
AUD0: forced idle state PER=2048 PC=000200ec
Audio 0 DMA wait hack: DISABLED. OFF=0001ff42, ON=0001ff70
Audio 0 DMA wait hack: DISABLED. OFF=0001fe74, ON=0001fe94
Audio 0 DMA wait hack: DISABLED. OFF=0001ff42, ON=0001ff70
AUD0: forced idle state PER=2048 PC=0002033e
Drag0nFly commented 3 years ago

Just as a side note, can the makefile be updated to create the amiberry.log file, and assign ownership to the default user (uid/gid 1000)?

Either that, or make sure it does not get deleted if it exists. Every time Amiberry is upgraded/recompiled, the logging disappears and one has to re-create it and chown the file.

midwan commented 3 years ago

Thanks for the savestate file, I'll run some tests with that later and see what I can find.

The logfile is created by Amiberry itself if you enable that option, and it will have the same ownership as the user running the emulator. That's the safest way to make sure it works in all scenarios/environments.

Retropie is kind of a special case, as it has the emulator in a directory which is not owned by the user. You can chown the directory where the binary is located to make sure that the log can be created and it will have the ownership you want.

Drag0nFly commented 3 years ago

Let me know if I should perform further tests (i.e, compile a version in-between 3.3 and the current release, e.g 4.0), or whether you were able to gleam any details from the provided savestate file.

I notice you changed the title, so perhaps the 4.0 release has already been verified as not working with “old” savestate files.

midwan commented 3 years ago

I'm not sure I can fix this... The problem is due to missing chunks in the savestate file, in older versions.

Specifically, and for the purpose of future reference, here's an example of the chunks included in the Gods savestate file you provided:

CPU
CPUX
DSK0
DSK1
DSK2
DSK3
DISK
CHIP
CHPX
BLTX
BLIT
CINP
SPR0
SPR1
SPR2
SPR3
SPR4
SPR5
SPR6
SPR7
AUD0
AUD1
AUD2
AUD3
CIAA
CIAB
KEYB
EXPB
EXPB
EXPB
EXPB
EXPB
EXPA
CRAM
FRAM
BORO
ROM
FSYC
FSYP
FSYS
FSYP
FSYS
FSYP
FSYS
FSYP
FSYS
GAYL
END

Now if we create a savestate file using the latest versions of Amiberry, we get these chunks instead:

CYCS
CPU
CPUX
DSK0
DSK1
DSK2
DSK3
DISK
CHIP
CHPX
BLTX
CINP
SPR0
SPR1
SPR2
SPR3
SPR4
SPR5
SPR6
SPR7
AUD0
AUD1
AUD2
AUD3
CIAA
CIAB
KEYB
EXPB
EXPB
EXPB
EXPB
EXPB
EXPA
CRAM
FRAM
BORO
ROM
FSYC
FSYP
FSYS
FSYP
FSYS
FSYP
FSYS
FSYP
FSYS
GAYL
END
CONF
END

There are a few that are missing from the older version: CYCS and CONF. I don't think CONF is that important, but CYCS restores the CPU cycles - I'm guessing that the CPU Halt problem comes from not having that part.

As the newer Amiberry version was updated to sync with WinUAE, the savestate format was slightly changed accordingly as well. Unfortunately this seems to cause the problem with older savestates, as you saw.

I wasn't able to find any solution to this... :(

Drag0nFly commented 3 years ago

Thanks for the analysis. That is unfortunate. It does sound plausible that the CPU cycles would cause it (or rather, the lack of such and the fact that the newer Amiberry relies on this information being provided directly from the savestate; due to having that portion apparently replaced by different code/mechanisms for restoring CPU states – inherited from WinUAE).

Would it be possible to perhaps generate this information on-the-fly in the event that the CYCS chunk is missing? (this might be a stupid question, but I am unsure how Amiberry handled the CPU cycles in the past, since they apparently were not explicitly specified, and as such not needed in the savestate. If knowing how it behaved there might be a way to work around it unless major parts of the mechanism is also changed in newer versions).

From your description it sounds like the old way was cleaner (at least when it came to savesates), and the newer is more “proper” but I am obviously unsure what benefits the sync with WinUAE provided apart from this compatibility issue (and whether the absence of the CYCS chunk necessitated it needing to be included)

Drag0nFly commented 3 years ago

Another approach, providing the mechanism for restoring the CPU cycles is known, might be to parse the old savestates to attempt to make them compatible – if that is an option – or give a warning. There doesn't appear to be a compatibility check for .uss files as of today, which could prove useful.

Probably best handled by some script and not in Amiberry itself if this is considered.

Drag0nFly commented 3 years ago

Not sure how useful this is (apologies in advance, you probably know all or most of this already). But I had some free time and did some comparisons of the v3.3 and the -dev + WinUAE source trees. There appears to be a CPUT/CPU trace field which is also attempted to be reinstated when loading the savestate, in addition to the CYCS/CPU cycles you witnessed earlier (and the CONF, but it should not be crucial)

Both instances are commented out in v4.1.6, but is being used in the WinUAE build AFAIKS, and partially in -dev (below)–

./amiberry-dev/src/savestate.cpp:1387: // p = restore_cpu_trace (p);

Then handled in newcpu.cpp ./amiberry-dev/src/newcpu.cpp:3598:uae_u8 *restore_cpu_trace (uae_u8 *src)

All occurrences–

grep -rnH restore_cpu_trace ./amiberry-dev/src/
./amiberry-dev/src/include/savestate.h:79:extern uae_u8 *restore_cpu_trace (uae_u8 *);
./amiberry-dev/src/newcpu.cpp:3598:uae_u8 *restore_cpu_trace (uae_u8 *src)
./amiberry-dev/src/savestate.cpp:654:           end = restore_cpu_trace (chunk);
./amiberry-dev/src/savestate.cpp:1387:  //  p = restore_cpu_trace (p);

(In v3.3 only the header entries for these exist)

There at least appears to have been some effort made in order to have older (pre-v3.3) savestates working, as the following section in savestate.cpp exists in all versions–

        /* extra bytes at the end needed to handle old statefiles that now have new fields */
        mem = xcalloc (uae_u8, *totallen + 100);
        if (!mem)
            return NULL;
        if (flags & 1) {
            zfile_zuncompress (mem, *totallen, f, len2);
        } else {
            zfile_fread (mem, 1, len2, f);
        }

Perhaps something else might need to be pre-filled.

The restore_cpu_cycles function appears quite basic, returning the src pointer, which (in my completely unqualified opinion) seems meaningless; as there is none in the older savestates, and the dereferenced pointer would be dubious, perhaps causing the cpu halt (and/or the restore_cycles which also takes a unsigned 8 bit int pointing to an unknown location in memory)

uae_u8 *restore_cycles(uae_u8 *src)
{
        if (restore_u32() != 1)
                return src;
        restore_u32();
        start_cycles = restore_u64();
        extra_cycle = restore_u32();
        if (extra_cycle >= 2 * CYCLE_UNIT)
                extra_cycle = 0;
        write_log(_T("RESTORECYCLES %08lX\n"), start_cycles);
        return src;
}

Since the routines which reinstate these fields (especially the traces) make some assumptions based on the CPU type, I am just (again) thinking a bit out loud on how (im-)possible this would be, as Amiberry does manage to get most of the way wrt. restoring the savestates.

Drag0nFly commented 3 years ago

Another thing I noticed which might already have been picked up upon, but not mentioned in the bug-report, is that when parsing the older savestate in a newer Amiberry version there is some discrepancy between the length of the chunk which is expected compared to what it actually finds.

When attempting to load a savestate created with 3.3 on Amiberry 4.1.6 this is the case with six of the following chunks–

Chunk 'CPU ' total size 122 bytes but read 118 bytes!
Chunk 'CPUX' total size 8 bytes but read 4 bytes!
Chunk 'BLTX' total size 87 bytes but read 89 bytes!
Chunk 'EXPB' total size 65 bytes but read 74 bytes!
Chunk 'EXPB' total size 68 bytes but read 77 bytes!
Chunk 'EXPA' total size 16 bytes but read 20 bytes!

Likewise, when loading a – correctly working – savestate created with v3.3 on the same Amiberry version, it is off-by-one byte for two of the chunks (both for the common interface adapters)–

Chunk 'CIAA' total size 31 bytes but read 30 bytes!
Chunk 'CIAB' total size 31 bytes but read 30 bytes!

Not sure if this tells us anything, but thought I'd mention it. There are some larger discrepancies for a couple of the chunks Amiberry >=4.1.6 expects, most notably CPU & CPUX (both off by 4), and EXPB (which is listed twice), and is off by 9 bytes in both cases.

Drag0nFly commented 3 years ago

(btw–I shot Toni Wilen an email to see whether he has some input to provide on this, seeing that portions of the code was merged from WinUAE; could be there are too many changes in the CPU core, but worth to check as v3.3 is as we all know the version on RetroPie; and it should affect quite a bit of users if at least some employ savestates...)

Drag0nFly commented 3 years ago

According to Toni Wilen the CYCS and other newly-introduced chunks in the savefile should not be the cause of this issue, unless something like cycle exact is also being used and the program was doing something really special at the time of saving.

An interesting scenario might be to test if the problem occurs with floppy statefiles as well, as the harddrive statefiles apparently add a number of unknown variables when saving. (I have some floppy statefile saves from v3.3 to compare behavior with, providing I can re-create by using the same config as before.)

Or, lastly, it could be a mismatch between autoconfig/expansion RAM between the old and new versions. In relation to this: the output from “dm” running in the debugger after the crash might prove useful (although I've not seen an option to toggle debugger mode in Amiberry)

Drag0nFly commented 3 years ago

Loaded a statefile created on v3.3, this time from a SotB floppy config (KS 1.3/512kb chip/512kb slow), and it works on 4.1.6.

So the issue is apparently related to the extra fields that get added when saving a WHDLoaded game.

Also switched between the two saves I made in Beast I, and that also works.

Log below for comparison–

STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Shadow of the Beast_Disk1.uss'
Saved with: 'UAE 4.4.0', description: '...'
Chunk 'CPU ' size 98 (98)
CPU: 68EC000, PC=00034630
Chunk 'CPU ' total size 98 bytes but read 94 bytes!
Chunk 'CPUX' size 8 (8)
Chunk 'CPUX' total size 8 bytes but read 4 bytes!
Chunk 'DSK0' size 205 (205)
-> '/home/pi/RetroPie/roms/amiga/Shadow of the Beast_Disk1.adf'
Chunk 'DSK1' size 205 (205)
-> '/home/pi/RetroPie/roms/amiga/Shadow of the Beast_Disk2.adf'
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 87 (87)
error
Chunk 'BLTX' total size 87 bytes but read 89 bytes!
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAB' size 31 (31)
Chunk 'KEYB' size 15 (15)
Chunk 'EXPA' size 16 (16)
Chunk 'EXPA' total size 16 bytes but read 20 bytes!
Chunk 'CRAM' size 524288 (524288)
Chunk 'BRAM' size 524288 (524288)
Chunk 'ROM ' size 75 (75)
ROM 'Kickstart 34.5' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v1.3 (A500,A1000,A2000) rev 34.5 (256k).rom'
Chunk 'END ' size 0 (0)
Chunk '' size 0 (0)
unknown chunk '' size 0 bytes
Chunk '', size 0 bytes was not accepted!
Building CPU, 44274 opcodes (0 0 1)
JIT popallspace: 0xabea0000-0xabea0800
CPU=68000, FPU=0, JIT=0. 24-bit
clipboard: reset (00000000)
Autoconfig board list:
Card 01: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 02: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 03: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
RTAREA located at 00F00000
mapped_malloc with memory bank 'UAE Boot ROM' already allocated!?
mapped_malloc(): 0x00f00000 - 0x00f10000 (0x20f00000 - 0x20f10000) -> UAE Boot ROM (rtarea)
TRAP_ENTRY = 00f01eda
mapped_malloc with memory bank 'Kickstart ROM' already allocated!?
mapped_malloc(): 0x00f80000 - 0x01000000 (0x20f80000 - 0x21000000) -> Kickstart ROM (kick)
mapped_malloc with memory bank 'Chip memory' already allocated!?
mapped_malloc(): 0x00000000 - 0x00100000 (0x20000000 - 0x20100000) -> Chip memory (chip)
mapped_malloc(): 0x00c00000 - 0x00c80000 (0x20c00000 - 0x20c80000) -> Slow memory (bogo)
ROM loader.. (<none>)
Known ROM 'KS ROM v1.3 (A500,A1000,A2000)' loaded
ROM loader end
memory init end
Reset at 00034630. Chipset mask = 00000000
Drag0nFly commented 3 years ago

A good way to get to the root of this issue is via the debugger and doing a memory dump (again, this is on advice from Toni Wilen–many thanks to him!)

I might be missing something, but can't seem to locate a way to enter the debugger from Amiberry, either it is hidden or disabled/unimplemented.

If this could be achieved by simply attaching to the running Amiberry process it would be even better.

Example memory dump from WinUAE:

> dm
00000000    2048K/4 =     512K ID C16 Chip memory
00200000    8192K/0 =    8192K -- F16 <none>
00A00000    2048K/0 =    2048K -- CIA CIA
00C00000     512K/1 =     512K ID C16 Slow memory
00C80000    1024K/0 =    1024K -- C16 Custom chipset
00D80000     256K/0 =     256K -- C16 <none>
00DC0000      64K/0 =      64K -- C16 Battery backed up clock (MSM6242B)
00DD0000      64K/0 =      64K -- C16 <none>
00DE0000     128K/0 =     128K -- C16 Custom chipset
00E00000     512K/2 =     256K ID F16 Kickstart ROM (C4F0F55F)
=KS ROM v1.3 (A500,A1000,A2000) rev 34.5 (256k) [315093-02]
00E80000    1024K/0 =    1024K -- F16 <none>
00F80000     512K/2 =     256K ID F16 Kickstart ROM (C4F0F55F)
=KS ROM v1.3 (A500,A1000,A2000) rev 34.5 (256k) [315093-02]

Can quickly confirm if all memory regions have been mapped correctly after statefile was loaded.

I am thinking this incompatibility issue will potentially continue manifesting itself in newer versions as well if unaddressed due to the way WHDLoaded programs are saved, and how the statefiles are handled upon loading (considering ADF-loaded programs saved with older Amiberry versions do not seem to have this problem.)

Drag0nFly commented 3 years ago
You can also try HD statefiles with chip ram only or chip ram + "slow ram". Don't have any other RAM types, especially not Z2 or Z3.
If it works: it probably is statefile autoconfig related, it if does not: it rules out autoconfig being the problem.

Did a few more tests based on the suggestion above to get rid of Z2 RAM (4MB by default, so increased Chip to the same). I think, however, that the statefile re-introduces it regardless of what the Amiga was booted with, so it will probably have to be recreated in v3.3, then loaded into 4.1.6.

Dumping the memory would probably give a better (and faster) indication, if this is at all possible.

Based on what Toni is saying, autoconfig does sound like a possible contender for being the culprit though...

Drag0nFly commented 3 years ago

Adding some further observations which was noticed during testing (Toni Wilen's comments below)–

The only difference I could see is that when loading the savestate in the older Amiberry version (UAE 4.4.0 - which works) Card 01 is listed as 'UAE boot ROM' in the working version, followed by 'Z2 Fast RAM' for Card 02, and 'UAE FS ROM' as Card 3.

When loading from the newer, non-working Amiberry version (4.1.6), both Card 01 & Card 02 have 'no name', 'UAE Boot ROM' is Card 03, Card 04 is 'Z2 Fast RAM' and 'UAE FS ROM' is Card 05.

Looks like card 1 and 2 shouldn't exist. Perhaps they are cards that are configured in default amiberry config but they aren't correctly disabled when different config from statefile gets applied?

Regarding “dm” from the debugger – it appears that an option to dump the memory map would need to be added to Amiberry, as it relies on the memory_map_dump() function, which is commented out (however, just the call) in expansion.cpp and memory.cpp

grep -riHn "memory_map_dump" amiberry-v4.1.6/
amiberry-v4.1.6/src/expansion.cpp:408:  //memory_map_dump ();
amiberry-v4.1.6/src/memory.cpp:1164:                //memory_map_dump ();

For testing purposes, the interactive debugger would not strictly be needed, but the function itself is a necessity (probably useful for other issues besides this one). I was thinking of recompiling 4.1.6 with one or both of these enabled when I noticed the function isn't declared anywhere (yet)

Drag0nFly commented 3 years ago

Ok, this is autoconfig related. Did as Toni Wilen suggested, and created a WHDLoad savestate on v3.3 after manually disabling Z2 RAM (4Mb -> 0Mb) and increasing chip RAM to the same amount (4Mb), performed a reset, loaded the game (again, in v3.3) and created several savestates, then quit and switched over to v4.1.6.

-> The WHDLoaded savestate is able to load and works fully in Amiberry 4.1.6-

Tested several savestates created in Amiberry v3.3, switching between them, etc. and the behavior is consistent.

Adding log below–

Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
KS ver = 39 (0x27)
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
SNDRATE 592.0*227.0*26.393581=3546875.041565
PAL mode V=26.3936Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 591*26.3936 = 15598.6064 / 26.4 = 591
STATERESTORE: '/opt/retropie/emulators/amiberry/savestates/Denaris_v2.0_2Disk_0049-2.uss'
Saved with: 'UAE 4.4.0', description: '...'
Chunk 'CPU ' size 122 (122)
CPU: 68EC020, PC=000016F2
Chunk 'CPU ' total size 122 bytes but read 118 bytes!
Chunk 'CPUX' size 8 (8)
Chunk 'CPUX' total size 8 bytes but read 4 bytes!
Chunk 'DSK0' size 31 (31)
Chunk 'DSK1' size 31 (31)
Chunk 'DSK2' size 31 (31)
Chunk 'DSK3' size 31 (31)
Chunk 'DISK' size 17 (17)
Chunk 'CHIP' size 356 (356)
Chunk 'CHPX' size 45 (45)
Chunk 'BLTX' size 87 (87)
error
Chunk 'BLTX' total size 87 bytes but read 89 bytes!
Chunk 'BLIT' size 4 (4)
Chunk 'CINP' size 12 (12)
Chunk 'SPR0' size 25 (25)
Chunk 'SPR1' size 25 (25)
Chunk 'SPR2' size 25 (25)
Chunk 'SPR3' size 25 (25)
Chunk 'SPR4' size 25 (25)
Chunk 'SPR5' size 25 (25)
Chunk 'SPR6' size 25 (25)
Chunk 'SPR7' size 25 (25)
Chunk 'AUD0' size 25 (25)
Chunk 'AUD1' size 25 (25)
Chunk 'AUD2' size 25 (25)
Chunk 'AUD3' size 25 (25)
Chunk 'CIAA' size 31 (31)
Chunk 'CIAB' size 31 (31)
Chunk 'KEYB' size 15 (15)
Chunk 'EXPB' size 65 (65)
Chunk 'EXPB' total size 65 bytes but read 74 bytes!
Chunk 'EXPB' size 68 (68)
Chunk 'EXPB' total size 68 bytes but read 77 bytes!
Chunk 'EXPB' size 55 (55)
Chunk 'EXPB' size 50 (50)
Chunk 'EXPA' size 16 (16)
Chunk 'EXPA' total size 16 bytes but read 20 bytes!
Chunk 'CRAM' size 4194304 (4194304)
Chunk 'BORO' size 9072 (9072)
Chunk 'ROM ' size 108 (108)
ROM 'Kickstart 39.106' = '/home/pi/RetroPie/BIOS/Amiga/KS ROM v3.0 (A1200) rev 39.106 (512k).rom'
Chunk 'FSYC' size 20 (20)
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
Chunk 'FSYP' size 32 (32)
Chunk 'FSYS' size 462 (462)
FS: restoring 6 locks
FS: Lock (root) 'DH0' ('/tmp/')
FS: Lock 'devs' ('/tmp//devs')
FS: Lock 'c' ('/tmp//c')
FS: base aino found '/tmp//c' ('c/')
FS: Lock 'WHDLoad' ('/tmp//c/WHDLoad')
FS: Lock 's' ('/tmp//s')
FS: base aino found '/tmp//s' ('s/')
FS: Lock 'startup-sequence' ('/tmp//s/startup-sequence')
FS: restoring 2 open files
FS: open file 's/startup-sequence' ('/tmp//s/startup-sequence'), pos=225
FS: restored file 's/startup-sequence' size changed! orig=225, now=224!!
FS: restored filepos larger than size of file 's/startup-sequence'!! 225 > 224
FS: open file 'c/WHDLoad' ('/tmp//c/WHDLoad'), pos=144978
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/tmp/' restored
Chunk 'FSYP' size 130 (130)
Chunk 'FSYS' size 222 (222)
FS: restoring 2 locks
FS: Lock (root) 'DH3' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip')
*** FS: Directory '/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C' missing!
FS: Lock 'C' ('/opt/retropie/emulators/amiberry/whdboot/boot-data.zip/C')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/boot-data.zip' restored
Chunk 'FSYP' size 134 (134)
Chunk 'FSYS' size 239 (239)
FS: restoring 2 locks
FS: Lock (root) 'Games' ('/home/pi/RetroPie/roms/amiga/Denaris_v2.0_2Disk_0049.lha')
*** FS: Directory '/home/pi/RetroPie/roms/amiga/Denaris_v2.0_2Disk_0049.lha/Denaris2Disk' missing!
FS: Lock 'Denaris2Disk' ('/home/pi/RetroPie/roms/amiga/Denaris_v2.0_2Disk_0049.lha/Denaris2Disk')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/home/pi/RetroPie/roms/amiga/Denaris_v2.0_2Disk_0049.lha' restored
Chunk 'FSYP' size 124 (124)
Chunk 'FSYS' size 189 (189)
FS: restoring 1 locks
FS: Lock (root) 'Saves' ('/opt/retropie/emulators/amiberry/whdboot/save-data/')
FS: restoring 0 open files
FS: restoring 0 notifications
FS: restoring 0 exkeys
'/opt/retropie/emulators/amiberry/whdboot/save-data/' restored
Chunk 'GAYL' size 6 (6)
Chunk 'END ' size 0 (0)
Chunk '' size 0 (0)
unknown chunk '' size 0 bytes
Chunk '', size 0 bytes was not accepted!
Building CPU, 45912 opcodes (2 0 1)
JIT popallspace: 0xabdff000-0xabdff800
CPU=68020, FPU=0, JIT=0. 24-bit
clipboard: reset (00000000)
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
RTAREA located at 00F00000
mapped_malloc with memory bank 'UAE Boot ROM' already allocated!?
mapped_malloc(): 0x00f00000 - 0x00f10000 (0x20f00000 - 0x20f10000) -> UAE Boot ROM (rtarea)
TRAP_ENTRY = 00f01eda
mapped_malloc with memory bank 'Kickstart ROM' already allocated!?
mapped_malloc(): 0x00f80000 - 0x01000000 (0x20f80000 - 0x21000000) -> Kickstart ROM (kick)
mapped_malloc with memory bank 'Chip memory' already allocated!?
mapped_malloc(): 0x00000000 - 0x00400000 (0x20000000 - 0x20400000) -> Chip memory (chip)
ROM loader.. (<none>)
Known ROM 'KS ROM v3.0 (A1200)' loaded
ROM loader end
memory init end
uae_start_thread "filesys" function at 0x111ff8 arg 0x3127810
uae_start_thread "filesys" function at 0x111ff8 arg 0x3132fd8
uae_start_thread "filesys" function at 0x111ff8 arg 0x313e7a0
uae_start_thread "filesys" function at 0x111ff8 arg 0x3149f68
Reset at 000016EC. Chipset mask = 00000003
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
uae_start_thread "render" function at 0xcd078 arg (nil)
CPU=68020 Chipset=Full ECS PAL
State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
Stored port 0/0 d=0: added 200 0 System mouse MOUSE0
Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0

As a side note, it seems the numbering of the expansion cards mentioned earlier are consistent when running off an WHDLoad .slave between the Amiberry versions I've tested. Not sure why cards 1+2 are not allocated when using WHDLoad (perhaps making room for RTG?)

Card mapping after loading the v3.3 (floppy-generated) savestate in 4.1.6 (which also worked fine) has the numbering start at 01–

Card 01: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 02: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 03: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
Drag0nFly commented 3 years ago

Also interesting side note is that the newer Amiberry v4.1.6 version identifies the UAE version as “Saved with: 'UAE 4.1.5”, whereas the older v3.3 has “Saved with: 'UAE 4.4.0'”. (perhaps it's a case of odd and even minor numbering)

Drag0nFly commented 2 years ago

Since this report got a bit exhaustive due to the amount of testing, it's probably useful with a TL;DR –

midwan commented 2 years ago

Thanks for the resume. I didn't have time to do more troubleshooting regarding this yet, but hopefully now that the drawbridge code is updated I'll get a chance to revisit it.

Drag0nFly commented 2 years ago

Understood, thanks for the update. I was quite (pleasantly) surprised that this issue did not have to do with the missing chunks or some underlying cpu handling code, but was apparently memory-mapping related.

midwan commented 2 years ago

The autoconfig information showing 2 Cards with no name, is also behaving the same way on WinUAE:

Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.

and it's the same in both v3.3 and 4.2 of Amiberry as well. So that at least is not the root cause of this. I'm still looking into it, hoping to see if I can find the detail that breaks it. :)

midwan commented 2 years ago

@Drag0nFly memory map dump is now implemented, so perhaps it will help troubleshoot this further.

Drag0nFly commented 2 years ago

Sounds good @midwan; it should certainly help to shed more light on what specifically is causing the incompatibility between the generated savestates. 👍

I can do some more tests in a day or two if needed.

Drag0nFly commented 2 years ago

Hmm. Has the default quitkey/button-quit been changed in the latest releases? Previously I used F12 to bring up the Amiberry GUI, which now quits Amiberry.

Same thing with the joystick/gamepad, where Select + Triangle was used to achieve the same task.

I am using the same amiberry.conf as before, and reverting to v4.1.6 brings back the original behaviour.

Drag0nFly commented 2 years ago

_btw., I added default_open_gui_key=F12 to amiberry.conf, but F12 still terminates Amiberry when pressed._

midwan commented 2 years ago

@Drag0nFly No, that hasn't changed - perhaps you're getting a crash when trying to open the GUI, and it shuts the emulator down? Check the logfile.

Drag0nFly commented 2 years ago

I did that, but there are no details in the logfile indicating a crash.

Latest entries–

Stored port 1/1 d=0: added 100 0 Goodbetterbest Ltd Gioteck VX2 2.4G Wireless Controller JOY0
SETSYSTIME
SETSYSTIME
serial: close fd=-1
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
hdf_close_target
midwan commented 2 years ago

Try launching it from the console, to see if it outputs any errors there?

Drag0nFly commented 2 years ago

Neither v4.1.6 and v4.2.0 start in console (bails out with src/osdep/gui/main_window.cpp at different lines, 1066 & 1113 for 4.1.6 and 4.2.0, respectively). Probably due to EmulationStation (which has also been exited) or that some SDL or video-mode is not provided/detected, since both launch fine from within ES.

Seems I should perhaps open a separate ticket for this. Also tried replacing amiberry.conf with the default amiberry.conf from v4.2.0, but the behaviour is the same.

Probably won't have time to do more testing today, but the goal was to do a memory dump with the statefiles on v4.2.0

Very strange that nothing is in the logs, and I can't see a debug or verbose option to make it more talkative.

Drag0nFly commented 2 years ago

Could also be related to the way the binary was built, as I simply used make -j4 PLATFORM=rpi4. Not sure whether any other options were used when building v4.1.6 via the RetroPie build scripts.

midwan commented 2 years ago

That line you mentioned is only reached if it fails to open the file data/AmigaTopaz.ttf file, during the GUI startup. Normally that would be the case if you started the binary from a location where the data directory was not in. Or if the file was missing from there, of course.

Drag0nFly commented 2 years ago

Thanks for that useful info, I knew it had to be something trivial. I launched Amiberry directly via the executable, omitting the shell script, for some reason.

When I start it via the .sh wrapper it does indicate what was going on – something as simple as a missing icon file. (doh)

/opt/retropie/emulators/amiberry/amiberry.sh

Unable to load image file: data/port.ico

I see memory_map_dump is called after the statefile is loaded. Performed a test now by loading one of the problematic statefiles:

State restored
Autoconfig board list:
Card 01: '<no name>' no autoconfig 00da0000 - 00daffff.
Card 02: '<no name>' no autoconfig 00600000 - 00a7ffff.
Card 03: 'UAE Boot ROM' no autoconfig 00f00000 - 00f0ffff.
Card 04: 'Z2 Fast RAM'
  e7.51.00.00.07.db.00.00.00.01.00.00.00.00.00.00
  MID 2011 (07db) PID 81 (51) SER 00000001
  Z2 0x00200000 0x00200000 4096K RAM 0
Card 05: 'UAE FS ROM'
  d1.52.40.00.07.db.00.00.00.03.20.00.00.00.00.00
  MID 2011 (07db) PID 82 (52) SER 00000003
  Z2 0x00e90000 0x00e90000   64K ROM 0
END
CPU cycleunit: 256 (0.500)
1867 CPU functions
P96 RESINFO: 00000000-00000000 (0,0)
SNDRATE 313.0*227.0*49.920410=3546895.062012
PAL mode V=49.9204Hz H=15625.0879Hz (227x312+1) IDX=10 (PAL) D=0 RTG=0/0
RTGFREQ: 312*49.9204 = 15575.1680 / 49.9 = 312
00000000    2048K/1 =    2048K ID C16 Chip memory
00200000    4096K/1 =    4096K ID F32 Fast memory
00600000    4608K/0 =    4608K -- F32 <none>
00A80000    1024K/2 =     512K ID F32 Kickstart ROM (6C9B07D2)
=KS ROM v3.0 (A1200) rev 39.106 (512k) [391523-01/391524-01]
00B80000     448K/0 =     448K -- F32 <none>
00BF0000      64K/0 =      64K -- CIA CIA
00C00000    1536K/0 =    1536K -- C16 <none>
00D80000     256K/0 =     256K -- C16 Gayle (low)
00DC0000      64K/0 =      64K -- C16 Battery backed up clock (none)
00DD0000      64K/0 =      64K -- C16 Gayle (low)
00DE0000      64K/0 =      64K -- C16 Gayle (high)
00DF0000      64K/0 =      64K -- C16 Custom chipset
00E00000     512K/1 =     512K ID F32 Kickstart ROM (6C9B07D2)
=KS ROM v3.0 (A1200) rev 39.106 (512k) [391523-01/391524-01]
00E80000      64K/0 =      64K -- F32 Autoconfig [reset]
00E90000     448K/0 =     448K -- F32 <none>
00F00000      64K/1 =      64K -- F32 UAE Boot ROM
00F10000     448K/0 =     448K -- F32 <none>
00F80000     512K/1 =     512K ID F32 Kickstart ROM (6C9B07D2)
=KS ROM v3.0 (A1200) rev 39.106 (512k) [391523-01/391524-01]
Warning: Bad playfield pointer 001ffffc