View Issue Details

IDProjectCategoryView StatusLast Update
05776BrianTheLionGeneralpublic2024-11-24 12:40
Reporterztronzo Assigned ToJOTD  
PrioritynormalSeveritycrashReproducibilityalways
Status assignedResolutionopen 
Project InfoBrian the Lion (Psygnosis)
http://www.whdload.de/games/BrianTheLion.html
Summary05776: Brian the Lion (AGA) crash
DescriptionStart Brian the Lion - AGA version
Completing the level "Spooky Ruins" with remaining time (Bonus Stage) will result in a crash:
Exception "Line 1111 Emulator" ($2C) at $C41A6 occured.


This problem does not happen with the OCS version.
Steps To ReproduceStart Brian the Lion - AGA version
enter code: 93/a/MZXY3
go to far right "Spooky Ruins" (last blue point on the right)

Speed run the level to complete with remaining time and reach "Bonus Stage"
You can also use infinite energy trainer to do this.

This possibly happens in other locations too..
Additional Information
Tested both WHDload slave 1.4 and 2.0
Tested A4000 68040 and A1200 68020
Tested with Fastmem Zorro2 and Zorro3 4MB and 8MB
Tested A1200 kickstarts, 3.9 and 40068 and kick39106

Setting a breakpoint in WinUAE debugger on $C41A6 will show the illegal instruction.
-1 009FF2B2 1331 3000 MOVE.B (A1, D3.W*1, $00) == $000c3f2b [00],-(A1) [00]
-1 009FF2B6 51ca fffa DBF .W D2,#$fffa == $009ff2b2 (F)
-1 009FF2B2 1331 3000 MOVE.B (A1, D3.W*1, $00) == $000c3f2a [cf],-(A1) [cf]
-1 009FF2B6 51ca fffa DBF .W D2,#$fffa == $009ff2b2 (F)
-1 009FF2BA b5c9 CMPA.L A1,A2
-1 009FF2BC 6500 ff14 BCS.W #$ff14 == $009ff1d2 (F)
-1 009FF2C0 201f MOVE.L (A7)+ [000d00e2],D0
-1 009FF2C2 5680 ADD.L #$03,D0
-1 009FF2C4 0280 ffff fffc AND.L #$fffffffc,D0
-1 009FF2CA 4e75 RTS
-1 001546B8 49f9 0018 a8d2 LEA.L $0018a8d2,A4
-1 001546BE 4eb9 000c 41a4 JSR $000c41a4
-1 000C41A4 3c0e MOVE.W A6,D6
-1 000C41A6 fb01 ILLEGAL

TagsNo tags attached.
Attached Files
MachineA1200
CPU68EC020
CPUSpeed50
ChipSetAGA
GFXCardNone
ChipMem2 MB
FastMem0 MB
WorkbenchOS 3.0
KickROM40 - Kick 3.1
KickSoftNone
WHDLoad18.5
imported

Activities

ztronzo

ztronzo

2022-08-24 20:31

reporter   note ~11725

When I added 4 MB of Chip RAM (instead of 2MB and no FAST RAM) it worked fine
ztronzo

ztronzo

2022-08-24 20:41

reporter   note ~11726

to elaborate, although the readme requirements say
2.0 MB ChipMem and 3.5 MB OtherMem for AGA version.

Works with: 4MB Chip RAM and 0 MB Fast RAM
Crashes with: 2MB Chip RAM and 4MB Fast RAM
ztronzo

ztronzo

2022-08-24 20:48

reporter   note ~11727

And magically there is no illegal instruction after at the same location

001546B8 49f9 0018 a8d2 LEA.L $0018a8d2,A4
001546BE 4eb9 000c 41a4 JSR $000c41a4
000C41A4 4df9 00df f000 LEA.L $00dff000,A6
000C41AA 41fa 096e LEA.L (PC,$096e) == $000c4b1a,A0
000C41AE 43fa 0cf4 LEA.L (PC,$0cf4) == $000c4ea4,A1
000C41B2 2009 MOVE.L A1,D0
000C41B4 7e04 MOVE.L #$04,D7
ztronzo

ztronzo

2022-08-24 21:31

reporter   note ~11728

Conclusion: I believe the game cannot afford losing any of the 2MB Chip RAM.
Having multiple Floppy Drives or Hard Drives can cause this problem as they use up a few kb of Chip RAM during mount.
Velociraptor5

Velociraptor5

2024-09-22 14:53

reporter   note ~13972

Recently, I just for fun tested this issue and have to confirm it. The game really crashes with "Exception "Line 1111 Emulator" ($2C) at $C41A6 occured."
Tested in WinUAE 68020/2MB chip/128MB fast, twice (Full Cycle Exact and also in JIT), and the issue is independent of WinUAE compatibility settings.
This game is just unplayable, this slave is wrong and should be repaired.
Whdl_register is attached.

P.S. ztronzo's level code "93/a/MZXY3" somehow doesn't work at me, I had to use code from Hall of Light "sXr7vgqaGP".
.whdl_register (2,617 bytes)   
************************* 22-Sep-24 14:25:20 ************************18.9.6601***
Slave='BrianTheLionAGA.Slave' (2236 bytes)
Resload   4FFEFA30 - 4FFF6404 (  27092) at 4FFEFA30  GL=$4FFF6510
Slave     4FFFED40 - 4FFFF5D8 (   2200) at 4FFFED40  BaseMemSize=$200000
attn=203(20) fc=-1 kn=0 zpt=-1 ep=0 ei=0
setcpu=13E(IC,SCB,ECB,BWT)

Exception "Line 1111 Emulator" ($2C) at $C41A6 occurred.

$000c4186 line-f       $fb01
$000c4188 subi.b       #??1,a6
$000c418c cmpi.b       #??1,a6
$000c4190 move.b       a6,d2
$000c4192 line-f       $fb01
$000c4194 move.b       a6,d6
$000c4196 line-f       $fb01
$000c4198 move.l       a6,d2
$000c419a line-f       $fb01
$000c419c move.l       a6,d6
$000c419e line-f       $fb01
$000c41a0 move.w       a6,d2
$000c41a2 line-f       $fb01
$000c41a4 move.w       a6,d6
�1m$000c41a6 line-f       $fb01
�22m$000c41a8 neg.b        a6
$000c41aa line-f       $fb01
$000c41ac dc.w         $4c0e
$000c41ae line-f       $fb01
$000c41b0 addq.b       #2,a6
$000c41b2 line-f       $fb01
$000c41b4 addq.b       #6,a6
$000c41b6 line-f       $fb01
$000c41b8 bcc.b        $c41c8
$000c41ba line-f       $fb01
$000c41bc bge.b        $c41cc
$000c41be line-f       $fb01
$000c41c0 moveq        #$e,d2
$000c41c2 line-f       $fb01

exception stackframe:
$001FFFE8 2008000C 41A6002C
regular stack:
$001FFFF0 001546C4 20000015 401A0080 00151CAC

  ----0---- ----1---- ----2---- ----3---- ----4---- ----5---- ----6---- ----7----
Dx    D00E4         6      FFFF       7FF         B  3AA65C69  FFFFF000        1D
Ax    9D85C     C372A     C41A4     B0288    18A8D2    17A662    DFF000

                 TTSM III   XNZVC
�1mPC=   C41A6�22m  SR=%0010000000001000  USP=1FFC00  �1mISP=1FFFE8  �22mMSP=1FF800
VBR=4FFF7510  SFC=5  DFC=5  CACR=1  CAAR=0

         MEDRAAAABVCPSDT          YZ  PMRCBSDAAAA
intena=%�1m0100000000101001�22m dmacon=%�1m0000011111100000�22m adkcon=$   0
intreq=%�1m0000011111000000�22m
vposr....A300  vhposr...0503  joy0dat..5AB9  joy1dat..0000  clxdat...8376  
pot0dat..0000  pot1dat..0000  potinp...5500  serdatr..3800  dskbytr..8000  
deniseid.00F8  hhposr...0002  
   ciaa:     PI ROPS		   ciab:     PI ROPS
	cra=�1m00001000�22m  ta=  3C<  3C	   cra=�1m00001000�22m  ta= 380< 380
	    AII ROPS			    AII ROPS
	crb=�1m00000000�22m  tb=21FF<21FF	   crb=�1m00000000�22m  tb=FFFF<FFFF
	    10RTWCLO	  parallel	    DRCCDSOY      M3210HDS
	pra=�1m11111110�22m  prb=�1m11111111�22m      pra=�1m11111111�22m  prb=�1m11111111�22m
       ddra=�1m00000011�22m ddrb=�1m00000000�22m     ddra=�1m11000000�22m ddrb=�1m11111111�22m
       event=001989  icr=04  sdr=00    event=1F3882  icr=01  sdr=00
.whdl_register (2,617 bytes)   
ztronzo

ztronzo

2024-11-24 12:40

reporter   note ~14223

BTW, I wouldn't say the slave is wrong, as this happens with the original game too when you do an HDD install using the developer's method. But I do wish for a fix.
The game demands the maximum Chip memory which is 2MB on any real Amiga, and that's why clicking the workbench icon also triggers a reboot to launch the game.
Having anything that reduces the chip memory (such as additional drives or so) will cause the same effect.

Issue History

Date Modified Username Field Change
2022-08-24 19:42 ztronzo New Issue
2022-08-24 20:31 ztronzo Note Added: 0011725
2022-08-24 20:41 ztronzo Note Added: 0011726
2022-08-24 20:48 ztronzo Note Added: 0011727
2022-08-24 21:31 ztronzo Note Added: 0011728
2022-11-22 23:25 Wepl Project WHDLoad => BrianTheLion
2022-11-22 23:36 Wepl Assigned To => JOTD
2022-11-22 23:36 Wepl Status new => assigned
2024-09-22 14:53 Velociraptor5 File Added: .whdl_register
2024-09-22 14:53 Velociraptor5 Note Added: 0013972
2024-11-24 12:40 ztronzo Note Added: 0014223