Hi
@AMIGASYSTEM ,
I tried both way, in both i saw the boot screen, that i dont see in my emulator, but i am never sure if the boot screen is from the rom i passed or from the builtin rom.
The AI investigation goes in ways that i cant rely:
I tested new_aros.rom without any ADF attached.
Main result: the ROM hangs before disk boot matters. It prints:
romtaginit
romtaginit done
and never reaches the next resident module.
For comparison, the old src/roms/aros.rom without ADF continues past that point and calls:
InitResident (-10 "p96gfx.hidd")
InitResident (-45 "alert.hook")
InitResident (-49 "ATA boot wait")
InitResident (-50 "dosboot.resource")
So the current primary suspect is not floppy, ADF, ATA, or p96 itself. The hang happens earlier: right after romtaginit done, before the boot flow returns to initialize the next resident.
I also enabled both trace knobs:
BELLATRIX_TRACE=1 BELLATRIX_RIGEL_TRACE=1
In this harness build, the useful trace is the Rigel trace. It shows VBL/PORTS interrupts are still alive, IPL rises and drops normally, and the CPU keeps returning to the idle loop:
PC=0x00fe7462
STOP #$2000
The OS dump is the strongest clue:
TaskReady: empty
ThisTask: input.device WAIT
console.device WAIT wait=00053000 recvd=00020000
That means a task is sitting in TaskWait even though it has received a signal that matches its wait mask. It should have been moved back to TaskReady, but it was not. So this looks like an Exec scheduler/wakeup problem.
The likely technical lead is the new ROM’s Exec build mode. In AROS, the SMP path in Signal() uses:
krnSysCallReschedTask(task, TS_READY);
On x86 there is a real handler for that syscall which removes the task from its old list and enqueues it on TaskReady. In the local m68k code I did not find an equivalent m68k implementation. If new_aros.rom was built with __AROSEXEC_SMP__ or --enable-target-variant=smp for m68k, that would explain the symptom: tasks receive signals, but never get rescheduled from WAIT to READY.
I updated AI_context/issues/ISSUE-0020.md with this revised conclusion. I also added harness debug support so HARNESS_OS_DEBUG_DUMP=1 prints task wait/received signal masks. The harness build passes.
Regards,