@Maijestro You are currently using PIO mode 4:Quote:
Xfer mode : best pio 12 (PIO 4, 16 MB/s) / best dma 69 (UDMA 5, 100 MB/s) / current 12 (PIO 4, 16 MB/s)
Quote:
assume that in the last section it is "DMA : yes" ?
That's just what the (emulated) drive supports, not what's currently used by the driver.
To use a Kickstart/nvram.config file, instead of the AmigaOne NVRAM which is not yet supported by QEmu, you'd have to replace the AmigaOne Kickstart/nonvolatile.library.kmod with a version from a classic Amiga or Pegasos2 version of AmigaOS 4.x.
joerg wrote:@Maijestro To use a Kickstart/nvram.config file, instead of the AmigaOne NVRAM which is not yet supported by QEmu, you'd have to replace the AmigaOne Kickstart/nonvolatile.library.kmod with a version from a classic Amiga or Pegasos2 version of AmigaOS 4.x.
Ok, I replaced the nonvolatile.library.kmod with the Pegasos2 version and nvram.config is in the Kickstart folder but PIO mode 4 is still used.
Can I also tell the Uboot firmware that I can activate it for a boot process? I am aware that the variables are not saved without NVRAM support.
The Pegasos 2 machine uses as standard:
Xfer mode : best pio 12 (PIO 4, 16 MB/s) / best dma 69 (UDMA 5, 100 MB/s) / current 69 (UDMA 5, 100 MB/s)
It works better here.
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
Ok, I replaced the nonvolatile.library.kmod with the Pegasos2 version and nvram.config is in the Kickstart folder but PIO mode 4 is still used.
Make sure you aren't using the unmodified Pegasos2 nvram.config file (peg2ide_xfer/irq) on the AmigaOne but changed it to AmigaOne hardware/drivers (a1ide_xfer/irq).
Quote:
Can I also tell the Uboot firmware that I can activate it for a boot process? I am aware that the variables are not saved without NVRAM support.
setenv a1ide_xfer FFFF
setenv a1ide_irq 1111
But AFAIK AmigaOS can't access current values but only the ones stored in NVRAM ("saveenv" U-Boot command, not supported by QEmu).
Ok, I replaced the nonvolatile.library.kmod with the Pegasos2 version and nvram.config is in the Kickstart folder but PIO mode 4 is still used.
Make sure you aren't using the unmodified Pegasos2 nvram.config file (peg2ide_xfer/irq) on the AmigaOne but changed it to AmigaOne hardware/drivers (a1ide_xfer/irq).
Thanks for the tip, but I remembered to enter the value in the nvram.config too.
Quote:
Can I also tell the Uboot firmware that I can activate it for a boot process? I am aware that the variables are not saved without NVRAM support.
setenv a1ide_xfer FFFF
setenv a1ide_irq 1111
But AFAIK AmigaOS can't access current values but only the ones stored in NVRAM ("saveenv" U-Boot command, not supported by QEmu).[/quote]
Ok, I understand that wouldn't work for testing purposes either.
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
in your S:startup-sequence or S:user-startup instead to change the transfer mode. (According to the idetool -l output you are using 2 emulated drives, unit 0 and 2.)
in your S:startup-sequence or S:user-startup instead to change the transfer mode. (According to the idetool -l output you are using 2 emulated drives, unit 0 and 2.)
With this entry my machine no longer boots and gets stuck at the boot logo.
I then tried to activate UDMA mode via the shell with:
idetool -x a1ide.device 0 69 and idetool -x a1ide.device 2
As soon as I do that, UDMA mode is switched on, but as soon as I want to access the hard drive, only the loading status (clock) comes up and I can no longer operate the system.
If I only:
idetool -x a1ide.device 2
As far as my 2 HD is concerned, I still have full access under AmigaOs4.1, but as soon as I want to access the 2 hard drive there is the loading status again as described above. I also checked it with:
idetool -l a1ide.device
And the HD is actually put into UDMA mode but is unusable when used. This is strange...
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
I didn't change anything in library / kernelstart - I just ran the commands from the console and tested under QEMU amigaone It looks like I have UDMA 5 at my place - thanks for the help
old:
idetool -l a1ide.device
-------------------Unit 0 information------------------------
Flags : $00000185 - present, supports DMA, ATA, supports cache flush, interrupts used,
Xfer mode : best pio 12 (PIO 4, 16 MB/s) / best dma 69 (UDMA 5, 100 MB/s) / current 12 (PIO 4, 16 MB/s)
Total blocks : 8388608
Blocksize : 512
Power mode : 2 / idle (ready for operation)
IO1 / IO2 / BMCR @ : $1F0 / $3F6 / $CC00
spurious interrupts: 0
bounced misaligned cache line start DMA requests: 0
bounced misaligned cache line end DMA requests: 0
bounced non-contiguous buffer DMA requests: 0
*** Error opening device a1ide.device / unit 1
*** Error opening device a1ide.device / unit 2
*** Error opening device a1ide.device / unit 3
*** Error opening device a1ide.device / unit 4
*** Error opening device a1ide.device / unit 5
*** Error opening device a1ide.device / unit 6
*** Error opening device a1ide.device / unit 7
*** Error opening device a1ide.device / unit 8
*** Error opening device a1ide.device / unit 9
*** Error opening device a1ide.device / unit 10
*** Error opening device a1ide.device / unit 11
*** Error opening device a1ide.device / unit 12
*** Error opening device a1ide.device / unit 13
*** Error opening device a1ide.device / unit 14
*** Error opening device a1ide.device / unit 15
6.AmigaOsA1:> ram:DiskSpeed/DiskSpeed ALL
DiskSpeed 4.5, OS4 version
Copyright ? 1989-92 MKSoft Development
Copyright ? 2003-04 Daniel J. Andrea II & St?phane Guillard
Modified June 2023 by A. W. Wyatt for VP DOS API
------------------------------------------------------------
CPU: AmigaOne AmigaOS Version: 54.30 Normal Video DMA
Device: Buffers: 64
Testing with a 512 byte, LONG-aligned buffer.
Create file: 7.80 MiB/sec
Write to file: 54.62 MiB/sec
Read from file: 59.04 MiB/sec
Testing with a 4096 byte, LONG-aligned buffer.
Create file: 11.40 MiB/sec
Write to file: 299.88 MiB/sec
Read from file: 313.72 MiB/sec
Testing with a 32768 byte, LONG-aligned buffer.
Create file: 15.04 MiB/sec
Write to file: 920.64 MiB/sec
Read from file: 975.17 MiB/sec
Testing with a 262144 byte, LONG-aligned buffer.
Create file: 10.88 MiB/sec
Write to file: 15.44 MiB/sec
Read from file: 14.72 MiB/sec
Testing with a 1048576 byte, LONG-aligned buffer.
Create file: 13.70 MiB/sec
Write to file: 15.38 MiB/sec
Read from file: 14.75 MiB/sec
new:
6.AmigaOsA1:> idetool -l a1ide.device
-------------------Unit 0 information------------------------
Flags : $00000185 - present, supports DMA, ATA, supports cache flush, interrupts used,
Xfer mode : best pio 12 (PIO 4, 16 MB/s) / best dma 69 (UDMA 5, 100 MB/s) / current 69 (UDMA 5, 100 MB/s)
Total blocks : 8388608
Blocksize : 512
Power mode : 2 / idle (ready for operation)
IO1 / IO2 / BMCR @ : $1F0 / $3F6 / $CC00
spurious interrupts: 0
bounced misaligned cache line start DMA requests: 0
bounced misaligned cache line end DMA requests: 0
bounced non-contiguous buffer DMA requests: 0
*** Error opening device a1ide.device / unit 1
*** Error opening device a1ide.device / unit 2
*** Error opening device a1ide.device / unit 3
*** Error opening device a1ide.device / unit 4
*** Error opening device a1ide.device / unit 5
*** Error opening device a1ide.device / unit 6
*** Error opening device a1ide.device / unit 7
*** Error opening device a1ide.device / unit 8
*** Error opening device a1ide.device / unit 9
*** Error opening device a1ide.device / unit 10
*** Error opening device a1ide.device / unit 11
*** Error opening device a1ide.device / unit 12
*** Error opening device a1ide.device / unit 13
*** Error opening device a1ide.device / unit 14
*** Error opening device a1ide.device / unit 15
6.AmigaOsA1:> ram:DiskSpeed/DiskSpeed ALL
DiskSpeed 4.5, OS4 version
Copyright ? 1989-92 MKSoft Development
Copyright ? 2003-04 Daniel J. Andrea II & St?phane Guillard
Modified June 2023 by A. W. Wyatt for VP DOS API
------------------------------------------------------------
CPU: AmigaOne AmigaOS Version: 54.30 Normal Video DMA
Device: Buffers: 64
After I restored the original "nonvolatile.library.kmod" and deleted nvram.config from the Kickstart folder, UDMA mode can also be used here. This makes everything feel a little faster when loading. Thanks smarkusg for the tip.
@joerg
Thank you very much for sharing your knowledge with us.
As you suggested, I entered it into User-startup and it works
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
@smarkusg Use much more buffers, at least 1000 instead of only 64. Change it with MediaTooBox in the partition details.
DiskSpeed isn't really usable for such tests, using for example ScsiSpeed would be better. DiskSpeed is a benchmark tool for comparing different file systems on the same hardware and most of your results for the small transfer sizes are just testing memcpy() speed of the disk cache instead of actual disk accesses and as result for example the 32768 bytes read/write results (from/to the disk cache) are much faster than the results of the larger transfers (which may bypass the disk cache and are disk I/O speed). ScsiSpeed is for checking the speed of the hardware/driver, without using a file system, disk caches, etc.
Use much more buffers, at least 1000 instead of only 64. Change it with MediaTooBox in the partition details.
You are right , the value should be minium 1000 - my mistake . Thank you
I have a question for you as we are talking about file systems. I have searched but have not found an answer. There is a JXFS file system. I checked - the file is no different from the one in AOS 4.1. In AOS 4.1 FE is the same - it even has the same checksum. The system can be used for reading and writing, but only until the next reboot of 4.1 FE. Is it possible to unlock it to make it read/write in AOS 4.1 FE? From what I read there were problems with it and it was withdrawn. I am aware that it can break something, but I would like to find out for myself
Testing with a 512 byte, LONG-aligned buffer.
Create file: 1.26 MiB/sec
Write to file: 3.75 MiB/sec
Read from file: 4.64 MiB/sec
Testing with a 4096 byte, LONG-aligned buffer.
Create file: 9.38 MiB/sec
Write to file: 22.98 MiB/sec
Read from file: 28.84 MiB/sec
Testing with a 32768 byte, LONG-aligned buffer.
Create file: 17.96 MiB/sec
Write to file: 115.34 MiB/sec
Read from file: 148.36 MiB/sec
Edited by smarkusg on 2023/11/5 22:48:50 Edited by smarkusg on 2023/11/5 22:50:34 Edited by smarkusg on 2023/11/5 22:51:24 Edited by smarkusg on 2023/11/5 22:52:16
Is it possible to use a real gamepad (usb) with Qemu and AmigaOs4.1? Qemu Pegasos2 supports USB.
Most of the games I currently play on AmigaOs4.1 work very well with a keyboard, but games like MegaMario/XRick/SMC etc. would play much better with a joystick or gamepad.
I've moved the project to qmiga.codeberg.page from the osdn.io address because that does not work reliably any more. Please use this address from now on. The wiki articles are also on codeberg.org/qmiga/pages/wiki now.
There is also a new BBoot release to simplify booting AmigaOne version but that needs latest QEMU from git master for now or the 8.2 release that will be out in one or two weeks. More info on using it is here.
Thanks for the new BBoot version, after some start difficulties by "SmartFilesystem" alias "SmartFileSystem" BBoot could not find and load the module, I had the problems at that time already with BBoot Pegasos2.
By removing all required firmware rom files it makes the installation for the AmigaOneXe machine very easy, no modification of the Install.Iso is necessary anymore.
Just a short info the AmigaOneXe machine works as fast as the Pegasos2 machine UDMA/USB/VIA-AC97 network works without any problem. Fantastic work.
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
BBoot with AmigaOne works very well. Additionally, I have noticed that emulation works much better with BBoot than U-Boot. I don't know why, but it does. Thank you