Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
43 user(s) are online (36 user(s) are browsing Forums)

Members: 0
Guests: 43

more...

Support us!

Headlines

Forum Index


Board index » All Posts (derfs)




Re: graphics drivers question
Not too shy to talk
Not too shy to talk


@Ami603

Yup its marked as Beta, so its still a work in progress.

Go to top


Re: graphics drivers question
Not too shy to talk
Not too shy to talk


@kas1e

currently no, as its full of debug and not optimized. Its at the 'get anything working' stage.

Go to top


Re: graphics drivers question
Not too shy to talk
Not too shy to talk


@kas1e

Thats how im doing it - see https://github.com/derfsss/VirtIOGPU

The other way is to fake it and add your driver as a known entry.

Go to top


Re: Virtio9PFS-handler v0.8.0-beta released
Not too shy to talk
Not too shy to talk


@MickJT

No problem, I will have a look to see what is going on.

Go to top


Re: Make May AI Data-type month for OS 4
Not too shy to talk
Not too shy to talk


@tekmage

Something that may help in this goal!

MCP for AmigaOS4 v1.0

Quote:
A Model Context Protocol server for driving AmigaOS 4.1 machines — both QEMU guests and real PowerPC hardware — from MCP-aware clients such as Claude Code, Claude Desktop, and IDE plugins.

At a glance
Brings AmigaOS 4.1 inside your AI client. From a single MCP session you can:

• Browse and edit files on the target Amiga, run AmigaDOS commands with captured stdout, upload large binaries with zlib compression and resumable chunks.
• Inspect live state — running tasks, opened libraries, mounted volumes, public screens, the last alert (decoded), CPU + cache + AttnFlags.
• Drive QEMU lifecycle — start, stop, screenshot the framebuffer, save / restore VM snapshots, attach a GDB stub for whole-system debug.
• Coordinate a fleet — run one method across any mix of QEMU guests and real hardware in parallel; barrier, quorum, or cross-target file relay.
• Install AmigaOS 4.1 FE end-to-end onto a blank volume — preflight, ISO mount, copy, LHA extract, Kicklayout patch, verify — via a single installer.run call.
• Live X5000 hardware introspection — board / CPU temperatures, voltages, fan PWM/RPM via the Cyrus MCU, plus CCSR registers, TLB walks, and IDebug-driven per-task crash snapshots.

Go to top


Re: pegasos2: rom reconstruction
Not too shy to talk
Not too shy to talk


@kas1e

Thats ok :)

@balaton

you are correct m48t59 is not on real HW - perfect example of Claude 'guessing'.

Go to top


Re: pegasos2: rom reconstruction
Not too shy to talk
Not too shy to talk


@kas1e

I should have been following this closer as I didnt realise you were doing more than just patching the existing bios - sorry!

Hope this helps but its not finished yet, and I dont have the real HW so that part will be relying on others.

Quote:
Pegasos II Firmware
A clean-room reimplementation of the BIOS / OpenFirmware-style boot ROM for the Pegasos II PowerPC motherboard. It boots AmigaOS 4, is ready to extend to MorphOS and Linux, and runs on the QEMU pegasos2 machine with real hardware to follow.

The original firmware (bPlan/CodeGen SmartFirmware 1.2, 2004) is nineteen years out of date and has known defects with modern PCI expansion cards. This rewrite is built fresh from public specs + the original SmartFirmware source license; it is not a binary patch of the stock ROM.


Github Page

Feature List

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@derfs

v1.10 is available for those that want to try it - https://github.com/derfsss/VirtualSCSI ... .10/VirtualSCSIDevice.lha

Go to top


Re: Virtio9PFS-handler v0.7.0-beta released
Not too shy to talk
Not too shy to talk



Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@joerg

good to know - thanks!

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@smarkusg

I managed to replicate the issue - I was using Mounter.library incorrectly, so took the code out. Working version in updated v53.8 release on github.

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@balaton

Looks like the high 32-bits of 64-bit BARs are not being zero'd out on AmigaOne so the addresses being accessed were out of range.

AmigaOne PCI mtree
Bus  0device  11, function 0:
    
SCSI controllerPCI device 1af4:1004
      PCI subsystem 1af4
:0008
      
IRQ 7pin A
      BAR0
I/O at 0x800500 [0x80053f]
      
BAR464 bit prefetchable memory at 0xffffffff84204000 [0xffffffff84207fff]
      
id "scsi0"

Bboot / AmigaOne Debug
/pci@80000000io fe000000/c00000 mem 80000000/7d000000
0
:0.0 10cc:0660  6000000 0000 0
0
:0.1 10cc:0661  6000000 0000 0
0
:7.0 1106:0686  6010040 0000 8
0
:7.1 1106:0571  1018a06 000e 80
0
:7.2 1106:3038  c030001 0400 0
    20 1   800000       20 ffffffe1
0
:7.3 1106:3038  c030001 0400 0
    20 1   800020       20 ffffffe1
0
:7.4 1106:3057  6800040 0000 0
0
:7.5 1106:3058  4010050 0300 4
    10 1   800100      100 ffffff01
    14 1   800200        4 fffffffd
    18 1   800204        4 fffffffd
0
:7.6 1106:3068  7800030 0300 30
0
:8.0 126f:0501  3800000 0000 0
    10 0 80000000  4000000 fc000000
    14 0 84000000   200000 ffe00000
0
:9.0 1274:5000  4010000 0100 0
    10 1   800300      100 ffffff01
0
:a.0 10ec:8139  2000020 0100 0
    10 1   800400      100 ffffff01
    14 0 84200000      100 ffffff00
0
:b.0 1af4:1004  1000000 0100 0
    10 1   800500       40 ffffffc1
    20 c 84204000     4000 ffffc00c
Checking initrd at 0x600000
-0x97be80 (3653248 bytes)
Found zip with 66 entries
Parsing Kicklayout at 0x97be80 
(3426 bytes)
Booting config 1AmigaOS 4.1 Final
Loading loader
Loading kernel
Loading FastFileSystem
Loading SmartFilesystem
Loading JXFileSystem
Loading a1floppy
.device.kmod
Loading a1ide
.device.kmod
Loading battclock
.resource.kmod
Loading biosversion
.resource.kmod
Loading bootmenu
.kmod
Loading bootimage
Loading CDFileSystem
Loading con
-handler.kmod
Loading console
.device.kmod
Loading diskboot
.kmod
Loading diskboot
.config
Loading diskcache
.library.kmod
Loading dos
.library.kmod
Loading elf
.library.kmod
Loading env
-handler.kmod
Loading FileSystem
.resource.kmod
Loading gadtools
.library.kmod
Loading gameport
.device.kmod
Loading graphics
.library.kmod
Loading hunk
.library.kmod
Loading input
.device.kmod
Loading intuition
.library.kmod
Loading it8212ide
.device.kmod
Loading keyboard
.device.kmod
Loading keymap
.library.kmod
Loading lsi53c8xx
.device.kmod
Loading mounter
.library
Loading newlib
.library.kmod
Loading nonvolatile
.library.kmod
Loading nvram
.resource.kmod
Loading ps2
.resource.kmod
Loading ram
-handler.kmod
Loading ramdrive
.device.kmod
Loading ramlib
.kmod
Loading shell
.kmod
Loading sii0680ide
.device.kmod
Loading sii3112ide
.device.kmod
Loading sii3114ide
.device.kmod
Loading sii3512ide
.device.kmod
Loading virtioscsi
.device.debug
Loading strap
.kmod
Loading timer
.device.kmod
Loading PCIGraphics
.card
Loading ATIRadeon
.chip
Loading 3dfxVoodoo
.chip
Loading 3DLabsPermedia2
.chip
Loading siliconmotion502
.chip
Loading petunia
.library.kmod
Loading usbresource
.library
Loading usbsys
.device
Loading uhci
.usbhcd
Loading ehci
.usbhcd
Loading hub
.usbfd
Loading bootmouse
.usbfd
Loading bootkeyboard
.usbfd
Loading massstorage
.usbfd
Loading ohci
.usbhcd
Loading mounter
.library
Starting exec
graphics
.library AltiVec/VMX enabled
graphics
.library PPC74xx optimizations enabled
CURRENT_POWER_CLOCK 2A1A0A09
 SYSTEM_CTRL PRE 00100000
 SYSTEM_CTRL POST 20108070
 MISC_CTRL PRE 00100001
 MISC_CTRL POST 00700001
 MISC_TIMING 00000000
 
[virtioscsiLoading Versionvirtioscsi.device 53.8 (14.04.2026) [15:12]
[
virtioscsiPCI_DiscoveryScanning for VirtIO SCSI controller...
[
virtioscsi:pci_discovery.cPCI_DiscoveryFound VirtIO SCSI (1AF4:1004at 00:0B.0
[virtioscsi:pci_discovery.cPCI_DiscoveryBAR0 (I/Omapped at Physical 0x00800500Size64
[virtioscsi:pci_discovery.cPCI_DiscoveryBAR4 (MMIOmapped at Physical 0x84204000Size16384
[virtioscsi:pci_modern_detect.cUnknown VirtIO cfg_type=(ignored)
[
virtioscsi:pci_modern_detect.cNOTIFY_CFG  BAR4+0x3000 -> base=0x84207000 phys=0x84207000 mult=4
[virtioscsi:pci_modern_detect.cDEVICE_CFG  BAR4+0x2000 -> base=0x84206000 phys=0x84206000
[virtioscsi:pci_modern_detect.cISR_CFG     BAR4+0x1000 -> base=0x84205000 phys=0x84205000
[virtioscsi:pci_modern_detect.cCOMMON_CFG  BAR4+0x0 -> base=0x84204000 phys=0x84204000
[virtioscsi:pci_modern_detect.cMMIO probe FAILED (status=0x00expected 0x01— falling back to legacy.
[
virtioscsi:pci_modern_detect.cVirtIO modeLEGACY
[virtioscsiInitVirtIOStarting Legacy PCI sequence at I/O port 0x00800500
[virtioscsiInitVirtIOHost features0x79000006
[virtioscsi]   bit  1VIRTIO_SCSI_F_HOTPLUG (hotplug events)
[
virtioscsi]   bit  2VIRTIO_SCSI_F_CHANGE (LUN param changes)
[
virtioscsi]   bit 24VIRTIO_F_NOTIFY_ON_EMPTY
[virtioscsi]   bit 27VIRTIO_F_ANY_LAYOUT
[virtioscsi]   bit 28VIRTIO_F_INDIRECT_DESC
[virtioscsi]   bit 29VIRTIO_F_EVENT_IDX
[virtioscsi]   bit 30VIRTIO_F_UNUSED (reserved)
[
virtioscsiInitVirtIOGuest features0x20000000 EVENT_IDX

Bboot / AmigaOne Debug (with Driver-side fix)
/pci@80000000io fe000000/c00000 mem 80000000/7d000000
0
:0.0 10cc:0660  6000000 0000 0
0
:0.1 10cc:0661  6000000 0000 0
0
:7.0 1106:0686  6010040 0000 8
0
:7.1 1106:0571  1018a06 000e 80
0
:7.2 1106:3038  c030001 0400 0
    20 1   800000       20 ffffffe1
0
:7.3 1106:3038  c030001 0400 0
    20 1   800020       20 ffffffe1
0
:7.4 1106:3057  6800040 0000 0
0
:7.5 1106:3058  4010050 0300 4
    10 1   800100      100 ffffff01
    14 1   800200        4 fffffffd
    18 1   800204        4 fffffffd
0
:7.6 1106:3068  7800030 0300 30
0
:8.0 126f:0501  3800000 0000 0
    10 0 80000000  4000000 fc000000
    14 0 84000000   200000 ffe00000
0
:9.0 1274:5000  4010000 0100 0
    10 1   800300      100 ffffff01
0
:a.0 10ec:8139  2000020 0100 0
    10 1   800400      100 ffffff01
    14 0 84200000      100 ffffff00
0
:b.0 1af4:1004  1000000 0100 0
    10 1   800500       40 ffffffc1
    20 c 84204000     4000 ffffc00c
Checking initrd at 0x600000
-0x97bf00 (3653376 bytes)
Found zip with 66 entries
Parsing Kicklayout at 0x97bf00 
(3426 bytes)
Booting config 1AmigaOS 4.1 Final
Loading loader
Loading kernel
Loading FastFileSystem
Loading SmartFilesystem
Loading JXFileSystem
Loading a1floppy
.device.kmod
Loading a1ide
.device.kmod
Loading battclock
.resource.kmod
Loading biosversion
.resource.kmod
Loading bootmenu
.kmod
Loading bootimage
Loading CDFileSystem
Loading con
-handler.kmod
Loading console
.device.kmod
Loading diskboot
.kmod
Loading diskboot
.config
Loading diskcache
.library.kmod
Loading dos
.library.kmod
Loading elf
.library.kmod
Loading env
-handler.kmod
Loading FileSystem
.resource.kmod
Loading gadtools
.library.kmod
Loading gameport
.device.kmod
Loading graphics
.library.kmod
Loading hunk
.library.kmod
Loading input
.device.kmod
Loading intuition
.library.kmod
Loading it8212ide
.device.kmod
Loading keyboard
.device.kmod
Loading keymap
.library.kmod
Loading lsi53c8xx
.device.kmod
Loading mounter
.library
Loading newlib
.library.kmod
Loading nonvolatile
.library.kmod
Loading nvram
.resource.kmod
Loading ps2
.resource.kmod
Loading ram
-handler.kmod
Loading ramdrive
.device.kmod
Loading ramlib
.kmod
Loading shell
.kmod
Loading sii0680ide
.device.kmod
Loading sii3112ide
.device.kmod
Loading sii3114ide
.device.kmod
Loading sii3512ide
.device.kmod
Loading virtioscsi
.device.debug
Loading strap
.kmod
Loading timer
.device.kmod
Loading PCIGraphics
.card
Loading ATIRadeon
.chip
Loading 3dfxVoodoo
.chip
Loading 3DLabsPermedia2
.chip
Loading siliconmotion502
.chip
Loading petunia
.library.kmod
Loading usbresource
.library
Loading usbsys
.device
Loading uhci
.usbhcd
Loading ehci
.usbhcd
Loading hub
.usbfd
Loading bootmouse
.usbfd
Loading bootkeyboard
.usbfd
Loading massstorage
.usbfd
Loading ohci
.usbhcd
Loading mounter
.library
Starting exec
graphics
.library AltiVec/VMX enabled
graphics
.library PPC74xx optimizations enabled
CURRENT_POWER_CLOCK 2A1A0A09
[virtioscsiLoading Versionvirtioscsi.device 53.8 (14.04.2026) [DBG]
[
virtioscsiPCI_DiscoveryScanning for VirtIO SCSI controller...
[
virtioscsi:pci_discovery.cPCI_DiscoveryFound VirtIO SCSI (1AF4:1004at 00:0B.0
[virtioscsi:pci_discovery.cBAR5 high DWORD is 0xffffffff (AmigaOne PCI probe bug), zeroing.
[
virtioscsi:pci_discovery.cBAR5 after fix0x00000000
[virtioscsi:pci_discovery.cPCI_DiscoveryBAR0 (I/Omapped at Physical 0x00800500Size64
[virtioscsi:pci_discovery.cPCI_DiscoveryBAR4 (MMIOmapped at Physical 0x84204000Size16384
[virtioscsi:pci_modern_detect.cUnknown VirtIO cfg_type=(ignored)
[
virtioscsi:pci_modern_detect.cNOTIFY_CFG  BAR4+0x3000 -> base=0x84207000 phys=0x84207000 mult=4
[virtioscsi:pci_modern_detect.cDEVICE_CFG  BAR4+0x2000 -> base=0x84206000 phys=0x84206000
[virtioscsi:pci_modern_detect.cISR_CFG     BAR4+0x1000 -> base=0x84205000 phys=0x84205000
[virtioscsi:pci_modern_detect.cCOMMON_CFG  BAR4+0x0 -> base=0x84204000 phys=0x84204000
[virtioscsi:pci_modern_detect.cMMIO probe OK (status=0x01— modern mode confirmed.
[
virtioscsi:pci_modern_detect.cVirtIO modeMODERN
[virtioscsi:virtio_init.cInitVirtIO_Moderncommon_cfg=0x84204000
[virtioscsi:virtio_init.cInitVirtIO_ModernDevice features hi=0x00000101 lo=0x30000006
[virtioscsi:virtio_init.cInitVirtIO_ModernDriver features hi=0x00000001 lo=0x20000000
[virtioscsi:virtio_init.cInitVirtIO_ModernFEATURES_OK acceptedStatus=0x0B
[virtioscsi:virtio_init.cInitVirtIO_ModernQueue 0 max size256
[virtioscsiVQ0256 entries 0x6FF07000 (PFN=0x0006FF07)
[
virtioscsi:virtio_init.cInitVirtIO_ModernQ0 enabled  desc=0x000AC000 avail=0x000AD000 used=0x000AE000 notify=0x84207000
[virtioscsi:virtio_init.cInitVirtIO_ModernQueue 1 max size256


I tried setting 0 via bboot, but something in the amigaos boot sequence overwrote it. Driver side fix will do for now!

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@kas1e

No real reason other than I was under a false impression that this needed to be a certain version number to work with mounter, so thats why only this driver has a v53 version number.

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@smarkusg

Thanks

It looks like there is a partition RDB entry for SFS on the test.img file, or at least thats what this bit of the log says.

Was this a new image file or was it previously setup as SFS in media toolbox?
- If it was setup in media toolbox, what blocksize did you use? was the partition the complete image file?
What version of SFS are you using?
Is it crashing as soon as Media Toolbox loads, or can you select any options (virtioscsi.device, 'Install', ...) ?

I cant currently replicate the crash, so this extra information will help lots.

I have also added a debug version to the latest lha file in https://github.com/derfsss/VirtualSCSI ... 3.8/VirtualSCSIDevice.lha

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@balatonQuote:
balaton wrote:@derfs
I don't understand that explanation. Can you explain it or is it just what the AI generated? The sm501 has the whole vram memory mapped and you can certainly read and write it on both amigaone and pegasos2 so this should fundamentally work. If it doesn't there must be some other reason but I don't understand what.

Using legacy virtio devices is not recommended because they may be dropped in next release or soon after. You should really fix the driver to work with modern virtio.

One thing that modern virtio is different from legacy is that it's always little endian so more than byte access may need endian conversion. Is that handled in your driver? But if it works on pegasos2 it probably does. While the Marvell and Articia may have bits to do endian swap they are not emulated, you should get a log message with -d unimp,guest_errors if you try to use it. So the driver needs to handle it.


Sorry I missed this before. Here is a reply I gave elsewhere on this topic.

Quote:
Both machines use the same virtio-scsi-pci device which exposes two config paths- I/O ports on BAR0, and modern MMIO capabilities on memory BARs. We pick the path at runtime with a probe, enable PCI memory+bus-master, write ACKNOWLEDGE to common-cfg STATUS, read it back. Match -> modern MMIO, else mismatch -> legacy I/O.

Pegasos2 / Sam460 (MV64361 bridge)
Transparent bridge, forwards CPU memory cycles to device BARs. Probe passes -> modern MMIO using stwbrx/lwbrx inline asm for LEBE. Must use bar->BaseAddress (CPU-visible), not bar->Physical (PCI-bus).

AmigaOne (Articia S bridge)
"floating buffer" bridge, MMIO reads return 0, writes silently dropped. Probe fails -> legacy I/O ports on BAR0 via InByte/OutByte. No software workaround for MMIO. The bridge hardware itself doesn't forward.

Why different?
Pure PCI host-bridge hardware limitation on AmigaOne machine - not QEMU, not AmigaOS. Legacy port I/O uses a separate address space the Articia S does forward, so it's the only path that works there.


Of course, it can always be due to my code and not doing things the correct way!

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@joerg

I could not get it working to my satisfaction which is why I have not put it on os4depot yet. Hopefully soon!

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@smarkusg

Quote:
Additionally, for the disk image to work, it must already be initialized. Otherwise, the Virtio SCSI driver causes a crash.

Can I get some more information please?

What version of qemu are you using?
What filesystem/block-size/partition size/disk size?
This crash happens when? after creating partition and closing/reopening qemu?
Can you try with the debug version to catch a crash log?

Thanks!

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


@derfs

Also for those that want to try it out - https://github.com/derfsss/VirtualSCSI ... 3.8/VirtualSCSIDevice.lha

Quote:
Boot Drive Support
VirtIO SCSI disks can now be used as boot drives.

It works for me, but it needs more use before I put it on os4depot.net/Amiupdate.

Go to top


Re: Virtio SCSI driver for AmigaOS4.1FE on QEMU
Not too shy to talk
Not too shy to talk


New version now available on os4depot.net.

The main update is making a 'one size fits all' version of the device driver, although pegasos2 and amigaone machines will have faster transfer speeds (QEMU limitations for sam460).

Quote:
virtioscsi.device - VirtIO SCSI Device Driver for AmigaOS 4.1 FE
Version 1.8 - 11 April 2026
Author: derfs
Source: https://github.com/derfsss/VirtualSCSIDevice

Quote:
v1.8 (11.04.2026)
- Unified platform: single -device virtio-scsi-pci works on all QEMU machines (AmigaOne, Pegasos2, SAM460ex). MMIO probe auto-detects transport at boot. Tested on all three machines.
- Performance: cacheable bounce buffers with CopyMem + CacheClearE (~10-20x faster for <=64KB I/O). O(1) cross-unit cookie routing. ISR occupancy bitmask skips inactive units.
- Debug: error-path instrumentation across all command handlers.
- Build: fixed header guard collision.

Go to top


Re: Radeon Drivers for 7450
Not too shy to talk
Not too shy to talk


@MazinKaesar

RadeonHD v5 does not support the 7450, so download the v3 driver and it should work.

Go to top



TopTop
(1) 2 3 4 ... 18 »




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project