VOGONS


A DOS gaming operating system for old and new machines.

Topic actions

Reply 160 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie

@The Solutor. This is very strange you don't see DN, the log shows DN started and output the lines. I bet something is wrong with the timer interrupts/wake up or so. Does F12 work and bring up OSD?

I added new diagnostic logs in the new release bundle.

Reply 161 of 177, by The Solutor

User metadata
Rank Member
Rank
Member
gsos wrote on Yesterday, 15:41:

@The Solutor. This is very strange you don't see DN, the log shows DN started and output the lines.

And not just DN, MC/NC/VC all the same they look started but they aren't visible

I bet something is wrong with the timer interrupts/wake up or so. Does F12 work and bring up OSD?

Yeah I thought that could be the secondary monitor (say output redirected there with an unsupported resolution) so I tried with a single monitor connected, and even swapped them.

No change.

About f12 I think no/not visible, but I'm not sure, I'll recheck and update this message, ASAP

EDIT

I confirm no F12 popoup

Reply 162 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie
superfury wrote on Yesterday, 13:50:

Apparently there's no ISO image anymore on the releases to use? I only see USB stuff there and raw files?

I added a .iso again!

Reply 163 of 177, by The Solutor

User metadata
Rank Member
Rank
Member

@gsos

New round, using the updated image, new klog (whit hopefully useful info at the end)

last klog.txt

VME enabled
SYSCALL enabled
[96mRetroOS Rust Kernel[0m
Paging: PAE (64-bit entries)
CPU supports Long Mode (64-bit)
Long mode tables set up
Identity mapping removed
NX (No-Execute) protection enabled
PAT: Write-Combining slot enabled (framebuffer)
Hardening kernel:
.text: 0xc0b00000-0xc0bde000 (pages 789248-789470): R-X
.rodata: 0xc0bde000-0xc0c07000 (pages 789470-789511): R-- NX
.data: 0xc0c07000-0xc0c84000 (pages 789511-789636): RW- NX
Kernel hardening complete
kernel_phys: 0x100000
Physical memory: 0x8ca0 pages free
Memory regions: 24
Available: 0x0 - 0x8f000
Available: 0x90000 - 0xa0000
Available: 0x100000 - 0xa200000
Available: 0xa20a000 - 0xb000000
Available: 0xb020000 - 0x4968c000
Available: 0x4ac0c000 - 0x5e000000
Available: 0x100000000 - 0x35f340000
fbcon: boot LFB 1440x900 pitch=5888 bpp=32 R16/8 G8/8 B0/8 addr=0xa0000000
fbcon: format accepted, native_blit=true
HPET: no ACPI table found; using timer fallback
IRQ: PIC
Clock: stable TSC 3593071261 Hz
IRQ: PIT
xHCI: probing 01:00.0
xHCI: scratchpad buffers allocated: 31
xHCI: running (slots=127 ports=22) at 01:00.0
xHCI: no keyboard found
xHCI: no mouse found
xHCI: probing 0a:00.3
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=8) at 0a:00.3
xHCI: port 2 speed 1 class 0 keyboard=true mouse=false
xHCI: port 3 speed 1 class 224 keyboard=false mouse=false
xHCI: keyboard ready (slot 1 port 2 ep 1 mps 😎 at 0a:00.3
xHCI: no mouse found
xHCI: probing 0a:00.4
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=2) at 0a:00.4
xHCI: no keyboard found
xHCI: no mouse found
IRQ: keyboard
IRQ: mouse probe
IRQ: mouse unavailable
Interrupts initialized
Stack guards at 0xc0c07000 (kernel) 0xc0c7f000 (arch)

[92mHello from Rust kernel![0m
SELFTEST PIT counting=1 samples=01FE 02F8 03E4 004A 0260 0478 01E4 03FC
SELFTEST PIC master IRR(seen)=00000001 IMR=11111000 IRQ0_pending=1 IRQ0_masked=0
SELFTEST APIC none (pure-PIC machine, INTR direct)
SELFTEST CPU vendor=AuthenticAMD family=15 tsc_deadline=0 x2apic_cap=0 invtsc=1
SELFTEST CPUID.15H unavailable (maxleaf=0xd)
SELFTEST CPUID.16H unavailable
SELFTEST IRQ0 delivery count=0 IF=1 PIC IRR=00 ISR=00 IMR=F8
Ring1 entered, paging + interrupts + syscall setup complete
Heap base: 0xc0c84000
RetroOS kernel retroos-1-gfb6651a0
Storage: nvme0n1 (244198 MB)
Storage: ahci0p0 (476940 MB)
Block devices initialized
hda: amp pin gain=0x0 dac gain=0x4a
hda: state pinctl=0x40 eapd=0x0 pinamp=0x0 dacamp=0x4a pinpwr=0x0 dacpwr=0x0 pinsel=0x0
hda: selected 0a:00.6 codec=0x14f15098 pin=nid31 dac=nid16
hda: path len=2 score=5016 nodes=1f>10>00>00>00>00 conn=0,0,0,0,0
Platform: host=Metal vga_passthrough=false firmware=Substitute audio=EmulatedHda hostfs=false debug=Debugcon
[91mDisk writes: PERSISTENT[0m — pass `ram-overlay` to protect the disk
Threading initialized
Filesystems: scanning partition tables...
Filesystems: 5 partition(s) found
Filesystems: probing ext4/FAT volumes...
Filesystems: 2 supported partition(s)
Multiboot ext4 (32 MB, volatile RAM) → /
FAT C: (330 MB) from disk → /home/retroos/
C: backing volume 1 (nvme0n1) directory /
boot runtime → C:\RETROOS (read-only)
C:\CONFIG: disk files before boot defaults; C:\TEMP: RAM
DOS E: → /disk1 (FAT partition, 199 MB, read-only)
DOS C: maps to /home/retroos/
Loading kernel symbols (244956 bytes)
Loaded 2773 function symbols
ISA PnP: no Sound Blaster found; trying legacy DSP discovery
Audio: EmulatedHda (SB_AUDIO=native)
Loading General MIDI bank...
midi: no ULTRASND under the C: root — General MIDI silent
General MIDI bank load complete
hda: stream RUN sdctl=0x00100002 cbl=32768 lvi=63 fmt=0x0011 lpib=0
DOS: installing substitute BIOS (vga_passthrough=false)
UMA: EMS frame at D0000, UMB 64KB free
Welcome to RetroOS! F12 opens the host monitor.
Starting home/retroos/CONFIG/NC/NC.EXE...
Boot log saved to C:\KLOG.TXT
boot launch: releasing console
boot launch: console released
boot launch: loading home/retroos/CONFIG/NC/NC.EXE
boot launch: file loaded (3772 bytes)
boot launch: constructing program thread
[gus] ULTRASND base=240 irq=5 dma=3
[mpu] MPU-401 at 330
boot launch: program thread ready (tid=1)
boot launch: display adopted
event_loop entered, tid=1
[gus] ULTRASND base=240 irq=5 dma=3
[mpu] MPU-401 at 330
The Norton Commander Versione 5.0,
Copyright (C) 1986 - 1995 della Symantec Corporation.

CLOCK: no event-loop clock sample for 250 ms (8192 loop passes)
IRQ0 delivery stalled: count=0 IF=1 PIC IRR=01 ISR=00 IMR=F8

Reply 164 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie

Okay yes, something on these systems is different. PIC has a pending irq0 (IRR=1) and IF=1 and irq0 is unmasked (IMR=F8 irqs 0,1,2 are open) yet it's not delivered count=0. So apparently PIC is not hooked up to the CPU in the default config. I'll investigate tonight.

Reply 165 of 177, by The Solutor

User metadata
Rank Member
Rank
Member
gsos wrote on Yesterday, 17:28:

Okay yes, something on these systems is different. PIC has a pending irq0 (IRR=1) and IF=1 and irq0 is unmasked (IMR=F8 irqs 0,1,2 are open) yet it's not delivered count=0. So apparently PIC is not hooked up to the CPU in the default config. I'll investigate tonight.

In the meantime i noticed that you implemented my suggestion of hybrid UEFI/BIOS boot, so I tried to boot via CSMWrap.

Using the native bios option I reach the filemanager screen !! (Norton Commander is configured ATM),

Using the VBE option, it's the same as UEFI.

I can't say a lot more because, in CSMwrap case I have no working keyboard , just like on the N100 machine.

Whatever I wasn't able to boot the system a single time via CSMWrap with older releases, the ones that worked in UEFI mode.

Reply 166 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie

Okay I released a new version that might fix the issue (tentatively). Likely APIC didn't route the PIC irqs. There will be new log lines if it still doesn't work

Reply 167 of 177, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
gsos wrote on Today, 01:38:

Okay I released a new version that might fix the issue (tentatively). Likely APIC didn't route the PIC irqs. There will be new log lines if it still doesn't work

The new release booted on my B75 machine but still fails at the same place on my H97 and X99.

On my B75 machine it did manage to configure my dISAppointment to the point it picked up my SB16 DSP (CT2290) but I'm not getting any sound output.
- There's no volume (mixer) control for SB16 audio. There's an option to switch to kernel mixing but it doesn't do anything at the moment.
- CT2290 doesn't have IRQ/DMA jumpers and defaults to some arbitrary IRQ and DMA numbers like IRQ10 and DMA3.
- Normally DIAGNOSE can be used to change its IRQ and DMA assignments for such "auto-init" cards to those specified by BLASTER environment variable, and this is also supported by UNISOUND.
- This is an ASUS board. The LDRQ1# is set to GPIO23 by default on this board so it needs to be toggled for DMA to work.
- Not sure if there's any option to switch between HDA and SB16, as on this particular system I've kept HDA enabled for use with a few OSes that don't have working drivers for other sound cards there.

To restore LDRQ1# from GPIO23 (you may refer to my lpcexp project):
1. Read register 48h from the LPC controller (00:1f.0). Strip the last bit. On most boards this reads 0x501 which means GPIO base address is 500h.
2. The GPIO_USE_SEL register resides exactly at the base address retrieved from previous step. Perform a 32-bit I/O read there.
3. Check the value read from previous step. If bit 23 is set, unset only that bit (keep other bits unchanged), and write the modified values back via 32-bit I/O write.

Once done, LDRQ1# will regain its native functionality and DMA will work.
NOTE: It's advised to first read the register 4Ch and check its bit 0 status. If this bit is set it means GPIO control is locked and you cannot make any changes.
However, I'm yet to see a board whose BIOS actually locked the GPIO registers so in most cases this is optional.

FYI: You may consider widening the supported chipsets down to ICH6. This will allow the initialization to work on the original board that featured this LPC-ISA design, RUBY-9719VG2AR, which used ICH7.
Additionally, so far I only had success with ISA PnP with ASRock boards as well as RUBY-9719VG2AR. On some other boards (e.g. ASUS ones), it seems only ports below 3FFh can be routed to LPC-ISA bridge, so no ISA PnP or other functions that require higher I/O ports.

Reply 168 of 177, by The Solutor

User metadata
Rank Member
Rank
Member
gsos wrote on Today, 01:38:

Okay I released a new version that might fix the issue (tentatively). Likely APIC didn't route the PIC irqs. There will be new log lines if it still doesn't work

Ok, it finally works, tanks. 😁

But this time a lot of additional consideration needs to be added:

-------------------------------------------------------------------------------------

Modes:

It boots both in UEFI, native CSM and CSMWrap

In UEFI I got the 4/3 aspect ratio, with fonts scaled according the 1440x900 native resolution ( practically 1200x900) in not that pleasant way

In CSM --> native video bios mode, the screen is scaled to 1440x900 (so stretched to 16/10) but with very nice looking smoothed fonts

In CSM --> VBE mode , same as above, with smoothed fonts, but not nice looking as above

The strangest part is that if I use the VBE mode AND persistent disk, I have no keyboard (I can't see the relationship, but that's what happens)

-------------------------------------------------------------------------------------

Programs:

VC 4.05 works

VC 4.99 --> too big to fit in memory (not yet tried to set it as default boot program)

MC --> bad filename or executable something like that, (from the log, setting it on boot: "Windows PE exec failed (home/retroos/CONFIG/MC/MC.EXE): errno 2")

Everything else I tried seem working OK

-------------------------------------------------------------------------------------

Other issues:

My second USB keyboard (which is what I'd like to use normally) is still non functional (albeit it's illuminated, so somewhat detected and enabled but not initialized correctly)

I see correctly my partitions, but as I wrote before I cant see the games bundled in the downloaded images.

-------------------------------------------------------------------------------------

Intel N100:

not yet tested.

Reply 169 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie

@LSS: At least some progress. I tried to address your gpio/ldrq issue and widened to ich6. I kept HDA as a kernel mixing backend to choose even when SB is available. For the other platforms if there is a way to give me a log that might be valuable.

@Solutor: Can you give me the boot log of the VBE-mode + persistent disk? It makes no sense. The second keyboard might work now and the games should be visible.

Release is updated.

Overall many thanks for testing this on your hardware! I know RetroOS is still rough around the edges, but at the moment I'm focused on getting the core robust. Supporting different hardware, making sure programs work, etc..

Nice scaling, perfecting sound mixing etc. hopefully come soon when the system runs well. Btw. , the source is deliberately distributed "do what ever you want to do". Feel absolutely free to play with it, add support for some cool retro hardware like dISAppointment, workarounds like EGAFIX for your system. And if you like to merge it in, make a PR on my repo.

Reply 170 of 177, by The Solutor

User metadata
Rank Member
Rank
Member

Ok going to downloading the new image, please wait.... 😉

In the meantime this is the log *still from the old image*, with not working keyboard (CSM/VBE persistent disk)

(BTW it worked once, when I rebooted, second boot no keyboard, it may be a timing problem, IDK)

Spoiler

VME enabled
SYSCALL enabled
[96mRetroOS Rust Kernel[0m
Paging: PAE (64-bit entries)
CPU supports Long Mode (64-bit)
Long mode tables set up
Identity mapping removed
NX (No-Execute) protection enabled
PAT: Write-Combining slot enabled (framebuffer)
Hardening kernel:
.text: 0xc0b00000-0xc0bde000 (pages 789248-789470): R-X
.rodata: 0xc0bde000-0xc0c07000 (pages 789470-789511): R-- NX
.data: 0xc0c07000-0xc0c84000 (pages 789511-789636): RW- NX
Kernel hardening complete
kernel_phys: 0x100000
Physical memory: 0x8d70 pages free
Memory regions: 37
Available: 0x0 - 0x9fc00
Available: 0x100000 - 0xa200000
Available: 0xa20a000 - 0xb000000
Available: 0xb020000 - 0x37bc0000
Available: 0x37dc0000 - 0x37f90000
Available: 0x37fc0000 - 0x39fc0000
Available: 0x39fe0000 - 0x428c6000
Available: 0x42ec8000 - 0x431a1000
Available: 0x431a2000 - 0x431a4000
Available: 0x45f74000 - 0x45f8f000
Available: 0x4878c000 - 0x48896000
Available: 0x4dfbc000 - 0x5e000000
Available: 0x100000000 - 0x35f340000
fbcon: boot LFB 1024x768 pitch=4096 bpp=32 R16/8 G8/8 B0/8 addr=0xa0000000
fbcon: format accepted, native_blit=true
HPET: no ACPI table found; using timer fallback
IRQ: PIC
Clock: stable TSC 3593296592 Hz
IRQ: APIC initial cpuid=1 base=0xfee00900
IRQ: LAPIC timer tick (init_count=24937 ref=PIT2)
xHCI: probing 01:00.0
xHCI: scratchpad buffers allocated: 31
xHCI: running (slots=127 ports=22) at 01:00.0
xHCI: no keyboard found
xHCI: no mouse found
xHCI: probing 0a:00.3
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=8) at 0a:00.3
xHCI: port 2 speed 1 class 0 keyboard=true mouse=false
xHCI: port 3 speed 1 class 224 keyboard=false mouse=false
xHCI: no keyboard found
xHCI: no mouse found
xHCI: probing 0a:00.4
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=2) at 0a:00.4
xHCI: no keyboard found
xHCI: no mouse found
IRQ: keyboard
IRQ: mouse probe
IRQ: mouse unavailable
Interrupts initialized
Stack guards at 0xc0c07000 (kernel) 0xc0c7f000 (arch)

[92mHello from Rust kernel![0m
SELFTEST PIT counting=1 samples=0274 E980 D01B B562 99E3 7E63 6484 4E43
SELFTEST PIC master IRR(seen)=00000001 IMR=11111011 IRQ0_pending=1 IRQ0_masked=1
SELFTEST APIC cpuid=1 base=0xfee00900 mode=xapic SVR=0x12f LINT0=0x700 timer_active=1
SELFTEST CPU vendor=AuthenticAMD family=15 tsc_deadline=0 x2apic_cap=0 invtsc=1
SELFTEST CPUID.15H unavailable (maxleaf=0xd)
SELFTEST CPUID.16H unavailable
SELFTEST IRQ0 delivery count=1 IF=1 PIC IRR=01 ISR=00 IMR=FB
Ring1 entered, paging + interrupts + syscall setup complete
Heap base: 0xc0c84000
RetroOS kernel retroos-1-g110b99a6
Storage: nvme0n1 (244198 MB)
Storage: ahci0p0 (476940 MB)
Block devices initialized
hda: amp pin gain=0x0 dac gain=0x4a
hda: state pinctl=0x40 eapd=0x0 pinamp=0x0 dacamp=0x4a pinpwr=0x0 dacpwr=0x0 pinsel=0x0
hda: selected 0a:00.6 codec=0x14f15098 pin=nid31 dac=nid16
hda: path len=2 score=5016 nodes=1f>10>00>00>00>00 conn=0,0,0,0,0
Platform: host=Metal vga_passthrough=false firmware=Substitute audio=EmulatedHda hostfs=false debug=Debugcon
[91mDisk writes: PERSISTENT[0m — pass `ram-overlay` to protect the disk
Threading initialized
Filesystems: scanning partition tables...
Filesystems: 5 partition(s) found
Filesystems: probing ext4/FAT volumes...
Filesystems: 2 supported partition(s)
Multiboot ext4 (32 MB, volatile RAM) → /
FAT C: (330 MB) from disk → /home/retroos/
C: backing volume 1 (nvme0n1) directory /
boot runtime → C:\RETROOS (read-only)
C:\CONFIG: disk files before boot defaults; C:\TEMP: RAM
DOS E: → /disk1 (FAT partition, 199 MB, read-only)
DOS C: maps to /home/retroos/
Loading kernel symbols (245001 bytes)
Loaded 2774 function symbols
ISA PnP: no Sound Blaster found; trying legacy DSP discovery
Audio: EmulatedHda (SB_AUDIO=native)
Loading General MIDI bank...
midi: no ULTRASND under the C: root — General MIDI silent
General MIDI bank load complete
hda: stream RUN sdctl=0x00100002 cbl=32768 lvi=63 fmt=0x0011 lpib=0
DOS: installing substitute BIOS (vga_passthrough=false)
UMA: EMS frame at D0000, UMB 64KB free
Welcome to RetroOS! F12 opens the host monitor.
Starting home/retroos/CONFIG/VC405/VC.COM...
Boot log saved to C:\KLOG.TXT
boot launch: releasing console
boot launch: console released
boot launch: loading home/retroos/CONFIG/VC405/VC.COM
boot launch: file loaded (65090 bytes)
boot launch: constructing program thread
[gus] ULTRASND base=240 irq=5 dma=3
[mpu] MPU-401 at 330
boot launch: program thread ready (tid=1)
boot launch: display adopted
event_loop entered, tid=1
CLOCK: first event-loop clock sample (queued_irq0=true execute_irq=false)
sink: first frame played
WARNING: sound underrun #1 written_frames=2689 consumed_frames=2888
The Volkov Commander, Version 4.05 shareware
Copyright (C) 1991-2000 Vsevolod V. Volkov

P.S. unrelated to RetroOS itself, I think, but when i download the img file, it's always downloaded twice, the first time the download reaches 100%, then it restart from 0%, then the download is finally saved (no manual intervention needed, but still a bit strange)

Reply 171 of 177, by The Solutor

User metadata
Rank Member
Rank
Member

Ok, few quick runs with the new image

Games folder are now visible, good 😉

In UEFI mode, finally, seems that the "problematic" keyboard works, at least if connected alone, still not working if connected together with the other one.

In CSM mode i didn't test thoroughly the problematic keyboard behavior, but I tried to understand what happens to keyboards in general.

It seem that the first time I reboot from windows the keyboard works, but if I turn off and reboot in CSM/VBE/Persistent disk the keyboard doesn't work anymore, that behavior seems, more or less, consistent and repeatable.

This is a log taken with keyboard KO and the new image .

Spoiler

VME enabled
SYSCALL enabled
[96mRetroOS Rust Kernel[0m
Paging: PAE (64-bit entries)
CPU supports Long Mode (64-bit)
Long mode tables set up
Identity mapping removed
NX (No-Execute) protection enabled
PAT: Write-Combining slot enabled (framebuffer)
Hardening kernel:
.text: 0xc0b00000-0xc0bdf000 (pages 789248-789471): R-X
.rodata: 0xc0bdf000-0xc0c08000 (pages 789471-789512): R-- NX
.data: 0xc0c08000-0xc0c84000 (pages 789512-789636): RW- NX
Kernel hardening complete
kernel_phys: 0x100000
Physical memory: 0x8d70 pages free
Memory regions: 35
Available: 0x0 - 0x9fc00
Available: 0x100000 - 0xa200000
Available: 0xa20a000 - 0xb000000
Available: 0xb020000 - 0x37bc0000
Available: 0x37dc0000 - 0x37f90000
Available: 0x37fc0000 - 0x39fc0000
Available: 0x39fe0000 - 0x45053000
Available: 0x45054000 - 0x45056000
Available: 0x45f74000 - 0x45f8f000
Available: 0x4878c000 - 0x48896000
Available: 0x4dfbc000 - 0x5e000000
Available: 0x100000000 - 0x35f340000
fbcon: boot LFB 1024x768 pitch=4096 bpp=32 R16/8 G8/8 B0/8 addr=0xa0000000
fbcon: format accepted, native_blit=true
HPET: no ACPI table found; using timer fallback
IRQ: PIC
Clock: stable TSC 3593109395 Hz
IRQ: APIC initial cpuid=1 base=0xfee00900
IRQ: LAPIC timer tick (init_count=24939 ref=PIT2)
xHCI: probing 01:00.0
xHCI: scratchpad buffers allocated: 31
xHCI: running (slots=127 ports=22) at 01:00.0
xHCI: no keyboard found
xHCI: no mouse found
xHCI: probing 0a:00.3
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=8) at 0a:00.3
xHCI: port 2 speed 1 class 0 keyboard=true mouse=false
xHCI: port 3 speed 1 class 224 keyboard=false mouse=false
xHCI: no keyboard found
xHCI: no mouse found
xHCI: probing 0a:00.4
xHCI: scratchpad buffers allocated: 2
xHCI: running (slots=64 ports=2) at 0a:00.4
xHCI: no keyboard found
xHCI: no mouse found
IRQ: keyboard
IRQ: mouse probe
IRQ: mouse unavailable
Interrupts initialized
Stack guards at 0xc0c08000 (kernel) 0xc0c7f000 (arch)

[92mHello from Rust kernel![0m
SELFTEST PIT counting=1 samples=577E 3E8A 252B 09FF EE7F D300 BAA2 A509
SELFTEST PIC master IRR(seen)=00000001 IMR=11111011 IRQ0_pending=1 IRQ0_masked=1
SELFTEST APIC cpuid=1 base=0xfee00900 mode=xapic SVR=0x12f LINT0=0x700 timer_active=1
SELFTEST CPU vendor=AuthenticAMD family=15 tsc_deadline=0 x2apic_cap=0 invtsc=1
SELFTEST CPUID.15H unavailable (maxleaf=0xd)
SELFTEST CPUID.16H unavailable
SELFTEST IRQ0 delivery count=1 IF=1 PIC IRR=01 ISR=00 IMR=FB
Ring1 entered, paging + interrupts + syscall setup complete
Heap base: 0xc0c84000
RetroOS kernel retroos-2-g4e2fa41d
Storage: nvme0n1 (244198 MB)
Storage: ahci0p0 (476940 MB)
Block devices initialized
hda: amp pin gain=0x0 dac gain=0x4a
hda: state pinctl=0x40 eapd=0x0 pinamp=0x0 dacamp=0x4a pinpwr=0x0 dacpwr=0x0 pinsel=0x0
hda: selected 0a:00.6 codec=0x14f15098 pin=nid31 dac=nid16
hda: path len=2 score=5016 nodes=1f>10>00>00>00>00 conn=0,0,0,0,0
Platform: host=Metal vga_passthrough=false firmware=Substitute audio=EmulatedHda hostfs=false debug=Debugcon
[91mDisk writes: PERSISTENT[0m — pass `ram-overlay` to protect the disk
Threading initialized
Filesystems: scanning partition tables...
Filesystems: 5 partition(s) found
Filesystems: probing ext4/FAT volumes...
Filesystems: 2 supported partition(s)
Multiboot ext4 (32 MB, volatile RAM) → /
FAT C: (330 MB) from disk → /home/retroos/
C: backing volume 1 (nvme0n1) directory /
Multiboot ext4 (128 MB, volatile RAM) → /home/retroos/GAMES
boot runtime → C:\RETROOS (read-only)
C:\CONFIG: disk files before boot defaults; C:\TEMP: RAM
DOS E: → /disk1 (FAT partition, 199 MB, read-only)
DOS C: maps to /home/retroos/
Loading kernel symbols (245390 bytes)
Loaded 2780 function symbols
ISA PnP: no Sound Blaster found; trying legacy DSP discovery
Audio: EmulatedHda (SB_AUDIO=native)
Loading General MIDI bank...
midi: no ULTRASND under the C: root — General MIDI silent
General MIDI bank load complete
hda: stream RUN sdctl=0x00100002 cbl=32768 lvi=63 fmt=0x0011 lpib=0
DOS: installing substitute BIOS (vga_passthrough=false)
UMA: EMS frame at D0000, UMB 64KB free
Welcome to RetroOS! F12 opens the host monitor.
Starting home/retroos/CONFIG/VC405/VC.COM...
Boot log saved to C:\KLOG.TXT
boot launch: releasing console
boot launch: console released
boot launch: loading home/retroos/CONFIG/VC405/VC.COM
boot launch: file loaded (65090 bytes)
boot launch: constructing program thread
[gus] ULTRASND base=240 irq=5 dma=3
[mpu] MPU-401 at 330
boot launch: program thread ready (tid=1)
boot launch: display adopted
event_loop entered, tid=1
CLOCK: first event-loop clock sample (queued_irq0=true execute_irq=false)
sink: first frame played
WARNING: sound underrun #1 written_frames=2831 consumed_frames=3036
The Volkov Commander, Version 4.05 shareware
Copyright (C) 1991-2000 Vsevolod V. Volkov

Speaking of which, you understand that this way (no timestamp, no keyboard, klog overwritten on each run) all the matter becomes really time consuming, given on each test I have to reboot in Windows or Linux just to grab the klog before it gets overwritten in the new test.

So, at least temporarily, would be nice if to have klog-hh-mm-ss.txt format, or at least a progressive numbering, then when the matter will be stabilized you could go back to the actual behavior.

Reply 172 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie
The Solutor wrote on Today, 06:25:
Ok, few quick runs with the new image […]
Show full quote

Ok, few quick runs with the new image

Games folder are now visible, good 😉

In UEFI mode, finally, seems that the "problematic" keyboard works, at least if connected alone, still not working if connected together with the other one.

In CSM mode i didn't test thoroughly the problematic keyboard behavior, but I tried to understand what happens to keyboards in general.

It seem that the first time I reboot from windows the keyboard works, but if I turn off and reboot in CSM/VBE/Persistent disk the keyboard doesn't work anymore, that behavior seems, more or less, consistent and repeatable.

This is a log taken with keyboard KO and the new image .

Speaking of which, you understand that this way (no timestamp, no keyboard, klog overwritten on each run) all the matter becomes really time consuming, given on each test I have to reboot in Windows or Linux just to grab the klog before it gets overwritten in the new test.

So, at least temporarily, would be nice if to have klog-hh-mm-ss.txt format, or at least a progressive numbering, then when the matter will be stabilized you could go back to the actual behavior.

Thanks, I had an issue on my laptop with hda where linux initialized it correctly and after a warm-reboot retroos could detect it but not over a cold reboot. I added unique (non-overriding klogs) with proper modification timestamp. I added extra diagnostic logs around keyboard detection that might shine some light on what is happening. You dont have a mouse attached?

What about your N100 system?

Reply 173 of 177, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
gsos wrote on Today, 04:57:

@LSS: At least some progress. I tried to address your gpio/ldrq issue and widened to ich6. I kept HDA as a kernel mixing backend to choose even when SB is available. For the other platforms if there is a way to give me a log that might be valuable.

Regarding the H97 and X99 systems -- I cannot get any klog as it's hanging at a very early point (showing just the available memory ranges), same as before.

Did some more tests on my B75 system, using dISAppointment options.
- When in SB native mode, hardware FM works, but volume is unusually low compared to native DOS.
- When in HDA (kernel mixing) mode, even on my B75 system it still prefers Headphone over Jack (HDA_OUTPUT has no effect). On the other hand, "Mix through SB" option does nothing other than selecting the first line (Kernel: HDA).
- I'm not getting any SFX output in native mode. Originally I thought it might be due to the system using IRQ5 for SB16, but no effect after manually modifying the CONFIG.SYS in the base image to reflect this (from the default IRQ7).
- Sound works in Quake, but it's actually playing through HDA output even though audio is set to native mode.
- Wacky Wheels seems to always use hardware FM for music, even in HDA. Sound effects only work in HDA anyway.
- Skyroads' music goes to whatever sink that's active (native or HDA). Sound effects only work in HDA, though.
- I'm getting some warnings in the KLOG regarding "sound underrun" but I cannot be sure if the issue with Sound Blaster is related to it.
- I'm getting some warnings regarding DMA5 not available for mixing in the KLOG. Not sure if this is related to the "Mix through SB" option having no effect. CT2290 does support high DMA so I'm not sure about the status of DMA registers inside RetroOS...

So for now it seems HDA remains a better option as native SB support feels hit-or-miss.
Considering FM volume being unusually low, I cannot rule out the possibility that SB mixer (especially WAVE) is not configured properly leading to no sound effect when in native mode, other than the possibility that I/O is not being correctly passed through to the real SB hardware.
Haven't really validated SB mixed mode yet due to current issues, but I'm not sure if this feature can use low DMA (DMA1) as a fallback, since not many Sound Blaster compatible cards support and utilize high DMA.

And issues with the USB IMG format:
- The two partitions bear the same volume serial number (UUID), resulting in my Linux desktop environment listing only the second partition (RETRODATA). The first partition can still be mounted manually (e.g. via command line), however.
- Right now RETRODATA partition doesn't seem to be of any use if USB storage support is yet to be available... I haven't validated this part as I've been testing dISAppointment on the B75 and I haven't enabled persistent disk yet.

Last edited by LSS10999 on 2026-10-03, 14:54. Edited 1 time in total.

Reply 174 of 177, by The Solutor

User metadata
Rank Member
Rank
Member
gsos wrote on Today, 14:31:

You dont have a mouse attached?

I have a BT mouse currently, I guess a bit hard to get working there, at least at the current development status

What about your N100 system?

I couldn't turn off, because it was busy doing "things", I i'll go to test it soon.

But i't like to resume the current status.

To shorten the discussion

Black keyboard = less problematic

White keyboard = more problematic.

Black:

works in UEFI and CSM mode, not sure it works in any USB port but I would take experiments on specific ports this for later

White:

It's backlit (like the black one) so I have a visual idea of what happens on boot.

UEFI: it's clearly detected (it turns on the lights), but its functional only if the black one is disconnected

CSM: doesn't work at all it's start illuminated and works on the grub menu, but it turn itself off during the system initialization

I'm going to download your new image, then i will test both the AMD and intel machine...

Reply 175 of 177, by The Solutor

User metadata
Rank Member
Rank
Member

Ok, for now tests HP/AMD with both the keyboards connected

CSM (writable disk, no functional keyboard)

The attachment KLOG0001.TXT is no longer available

CSM (protected disk, black working, white dead)

The attachment KLOG0002.TXT is no longer available

UEFI (black working, white alive, but not functional)

The attachment KLOG0004.TXT is no longer available

Reply 176 of 177, by The Solutor

User metadata
Rank Member
Rank
Member

Ok, for now tests HP/AMD with with white keyboards only connected

CSM (a run with the keyboard working)

The attachment KLOG0005.TXT is no longer available

CSM (two run with writable disk and the keyboard not working)

The attachment KLOG0007.TXT is no longer available
The attachment KLOG0006.TXT is no longer available

UEFI not tested, I think will be similar to 0005 above.

EDIT:

About the N100 I tested once (still no kb detected), and rebooted my system.

But klog seems it wasn't saved anywhere, I can't bring it down again at least for today, sorry.

Reply 177 of 177, by gsos

User metadata
Rank Newbie
Rank
Newbie

@LSS I see, quake is using GUS which is still emulated through HDA. Can you provide me the klog of your system, that might contain some info relevant to why SB is not working. I'm really interested because you provide me the only system where SB really can run natively as RetroOS intended. I think we are very close to get it working with disappointment. I'm released a new version where hopefully the HDA_OUTPUT=Jack problem is fixed.