[NDS] ARM7 Boot Services / Wait-Path — stuck in copied 0x037F8000 block #171

Open
opened 2026-03-16 06:34:56 +00:00 by krugi20 · 0 comments
Owner

Das frühere Symptom sah nach Timer/Halt/WaitForIRQ aus. Nach den letzten Fixes ist der aktuelle Hauptblocker präziser eingegrenzt.

Stand (2026-03-17)

  • Nach IPCSYNC- und BIOS-HLE-Fixes läuft ARM7 nicht mehr in den ursprünglichen Frühabbruch
  • Stattdessen landet der Boot nun stabil im kopierten ARM7-Boot-/Serviceblock bei 0x037F8000
  • Beobachtete Schleifen / Hotspots:
    • 0x037FB9C8
    • 0x037FBA10
    • Helfer um 0x037FE340
    • Wrapper um 0x038037B4

Verifiziert

  • tests/nds/nds_boot_probe.c zeigt: Bolt.nds bleibt auch nach 3000 Frames bei best_visible=0
  • Der ARM7-Bootblock ist tatsächlich in Shared WRAM kopiert; das Problem ist nicht mehr nur ein leerer Stub
  • BIOS IRQ Trampoline und IntrWait wurden bereits näher an das echte Verhalten gebracht

Nächste Schritte

  • Servicefunktionen um 0x02386500, 0x02385F4C und 0x02385EFC gegen den Retail-Boot validieren
  • Prüfen, ob der frühe ARM7-Handshake-Mirror nur Übergangshack ist oder durch korrektes Verhalten ersetzt werden muss
  • Bestätigen, wann der Boot von Service-/OS-Code in echte Display-Initialisierung wechselt
  • Erst danach Timer/Halt-Themen erneut bewerten, falls sie dann noch blocker sind
Das frühere Symptom sah nach Timer/Halt/WaitForIRQ aus. Nach den letzten Fixes ist der aktuelle Hauptblocker präziser eingegrenzt. ## Stand (2026-03-17) - Nach IPCSYNC- und BIOS-HLE-Fixes läuft ARM7 nicht mehr in den ursprünglichen Frühabbruch - Stattdessen landet der Boot nun stabil im kopierten ARM7-Boot-/Serviceblock bei `0x037F8000` - Beobachtete Schleifen / Hotspots: - `0x037FB9C8` - `0x037FBA10` - Helfer um `0x037FE340` - Wrapper um `0x038037B4` ## Verifiziert - `tests/nds/nds_boot_probe.c` zeigt: `Bolt.nds` bleibt auch nach 3000 Frames bei `best_visible=0` - Der ARM7-Bootblock ist tatsächlich in Shared WRAM kopiert; das Problem ist nicht mehr nur ein leerer Stub - BIOS IRQ Trampoline und `IntrWait` wurden bereits näher an das echte Verhalten gebracht ## Nächste Schritte - Servicefunktionen um `0x02386500`, `0x02385F4C` und `0x02385EFC` gegen den Retail-Boot validieren - Prüfen, ob der frühe ARM7-Handshake-Mirror nur Übergangshack ist oder durch korrektes Verhalten ersetzt werden muss - Bestätigen, wann der Boot von Service-/OS-Code in echte Display-Initialisierung wechselt - Erst danach Timer/Halt-Themen erneut bewerten, falls sie dann noch blocker sind
krugi20 changed title from [NDS] Timer + Halt/WaitForIRQ — ARM7 blockiert in Wait-Loop to [NDS] ARM7 Boot Services / Wait-Path — stuck in copied 0x037F8000 block 2026-03-17 18:46:12 +00:00
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
krugi20/retroverse#171
No description provided.