Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
78 user(s) are online (44 user(s) are browsing Forums)

Members: 3
Guests: 75

bigmac, VooDoo, afxgroup, more...

Headlines

 
  Register To Post  

« 1 ... 48 49 50 (51) 52 53 54 ... 72 »
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@balaton

I have a question if the new BBoot bypassing pegasos2.rom can affect the network operation ?

I am currently testing networki stream radio for over 3 hours and it still works.

I don't know if this is a coincidence but would rather ask.
Qemu i have from today's git

Thank you for your reply

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@balaton
@Maijestro

never done from here tells me:

git clone https://gitlab.com/qemu-project/qemu/-/tree/master
Clone to 'master' in progress...
fatal: Unable to update base url from redirection:
request: https://gitlab.com/qemu-project/qemu/- ... s?service=git-upload-pack
redirect: https://gitlab.com/qemu-project/qemu/-/tree/master

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@white
I sent you the file in a private message

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@smarkusg

Thank you
But I would like to understand how to do it for the next time too

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@balatonQuote:
balaton wrote:@derfs
If you see no Unknown RTAS token message then it's not using rtas to access nvram but reads it directly. I think I know what might be missing then but does this cause any issue other than the crash log? If not I probably won't fix until QEMU 8.2. The output you get with pegasos2 firmware does not seem meaningful anyway.


The only issue i have is that some software (Sysmon) i use will always crash as it uses 'nvgetvar' to read all non-volatile variables, as a way to see what has been set in the bios.

It does not affect using the OS at all so it can wait.

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@white
it's all written on the website don't you read ? ;-P
https://www.qemu.org/download/

--
To download and build QEMU from git:

git clone https://gitlab.com/qemu-project/qemu.git
cd qemu
git submodule init
git submodule update --recursive
./configure
make
--

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@smarkusg

I download the .tar from master and overwrite the qemu 8.0.3 build
is it then I compile for example ?

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@smarkusg
It's unlikely to affect network but anything is possible and I can't tell. That's why BBoot prints these verbose numbers so such differences can be debugged. Compare what you get when doing boot hd:0 bboot with pegasos2.rom with what you get when using bboot without pegasos2.rom, and see if there are differences. If the network issue is thought to be related to interrupts then compare how interrupts are configured, this is in the /pci/device line after the | between the device id and command reg value so for example:
/pci@80000000/usb:      0:c.2   1106:3038 c0300 30381106 0409 7
Added assigned
-addresses
  1006220        0 fe001040         0       20  
00000001 00001041


the value for interrupt is 0409 above in the first line, that's line 9 pin 4, the 7 is the command register value: bus master, io, mem enabled the values before the | come from the deivce tree so they are less interesting for this. The Added assigned-addresses means that BBoot created the value below, this won't be shown on pegasos2.rom in which case the values shown were made by the firmware. This device only has BAR4 at offset 0x20, last byte of phys.hi that's the first value, these numbers are encoded as per the OF standard for PCI binding. On the right from | is the actual value from config reg 0x20 that was 00000001 before and changed to 00001041 to match the assigned address of fe001040. This is an io bar so last bit is 1 and mapped from 0 in the PCI io space which is visible on host in io win at fe000000.
These numbers convey a lot of info but may take some time for somebody not familiar with these to get all of them but I hope these would help debugging issues with BAR and IRQ assignment now that these could be get with BBoot on QEMU with and without pegasos2.rom and on real hardware as well.

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@white
Don't overwrite anything with anything, that would just mix up these. Either download tar and compile from that or clone git and build from that. You can do those in separate directories but mixing them is a really bad idea.

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@balaton
Thank you for the detailed information

I will leave the attached test stream. Should the network stop working I will add a comment to this post.

Thank you again for your work !!!

edit: 23:35

@balaton
You were right - the network connection crashed


Edited by smarkusg on 2023/7/20 22:41:46
Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@smarkusg
@balaton

Thank you

okay
now i have version 8.1
qemu-system-ppc --version
QEMU emulator version 8.0.90 (v8.1.0-rc0)
Copyright (c) 2003-2023 Fabrice Bellard and the QEMU Project developers

I'm doing it all over again just to be safe
from "masters"
I do
clone "copy url"
and then
git clone https://gitlab.com/qemu-project/qemu.git

etc etc.

since there are
this is what i use in :
./configure

./configure --target-list=ppc-softmmu --enable-slirp --enable-lto --disable-dbus-display --disable-debug-info --disable-debug-tcg

if there are fixes i can do in ./configure
thanks for the tips


Edited by white on 2023/7/20 22:41:29
Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
I think I've got the logs we want to compare to. My brain is getting a little tired to be honest!

bboot output from boot with no pegasos rom:

(Ugh, tied. devices 3 & 4 are the GFX and GFX_Audio respectively)

You are quite right, interrupts are set to 0xff for some reason.

BBoot 0.1 (20.7.2023)
/
pci@80000000io fe000000/10000 mem 80000000/40000000
/pci@80000000/host:    0:0.0     11ab:6460 60000 646011ab 0000 7
Added assigned
-addresses
/pci@80000000/pci10ec,8139:    0:1.0     10ec:8139 20000 813910ec 0100 0
Fixed ROM BAR
Added assigned
-addressesset interrupt 0109
  
1000810        0 fe001200         0      100  00000001 00001201
  2000814        0 80000000         0      100  
00000000 80000000
  2000830        0 80040000         0    40000  
00000000 80040000
/pci@80000000/pci1234,1111:    0:2.0     1234:1111 38000 11111234 0000 0
Added assigned
-addressesset interrupt 0009
 
42001010        0 81000000         0  1000000  | 00000008 ! 81000008
  2001018        0 82000000         0     1000  
00000000 82000000
/pci@80000000/pci1002,68e1:    0:3.0     1002:68e1 30000 68e11002 01ff 0
Fixed ROM BAR
Added assigned
-addresses
 42001810        0 90000000         0 10000000  
0000000c 90000008
  2001818        0 a0000000         0    20000  
00000004 a0000000
  1001820        0 fe001300         0      100  
00000001 00001301
  2001830        0 a0020000         0    20000  
00000000 a0020000
/pci@80000000/pci1002,aa68:    0:4.0     1002:aa68 40300 aa681002 02ff 0
Added assigned
-addresses
  2002010        0 a0040000         0     4000  
00000004 a0040000
/pci@80000000/isa:    0:c.0     1106:8231 60100 82311106 0000 8
Added assigned
-addresses
/pci@80000000/ide:    0:c.1     1106:0571 1018f 05711106 010e 87
Added assigned
-addresses
  1006110        0 fe001000         0        8  
00000001 00001001
  1006114        0 fe001008         0        4  
00000001 ! 00001009
  
1006118        0 fe001010         0        8  00000001 00001011
  100611c        0 fe001018         0        4  
00000001 ! 00001019
  
1006120        0 fe001020         0       10  00000001 00001021
/pci@80000000/usb:    0:c.2     1106:3038 c0300 30381106 0409 7
Added assigned
-addresses
  1006220        0 fe001040         0       20  
00000001 00001041
/pci@80000000/usb:    0:c.3     1106:3038 c0300 30381106 0409 7
Added assigned
-addresses
  1006320        0 fe001060         0       20  
00000001 00001061
/pci@80000000/other:    0:c.4     1106:8235 68000 82351106 0009 0
Added assigned
-addresses
/pci@80000000/sound:    0:c.5     1106:3058 40100 30581106 0309 4
Added assigned
-addresses
  1006510        0 fe001100         0      100  
00000001 00001101
  1006514        0 fe001030         0        4  
00000001 00001031
  1006518        0 fe001034         0        4  
00000001 00001035
/pci@80000000/pci1106,3068:    0:c.6     1106:3068 78000 30681106 0309 30
Added assigned
-addresses
/pci@c0000000io f8000000/10000 mem c0000000/20000000
/pci@c0000000/host:    0:0.0     11ab:6460 60000 646011ab 0000 7
Added assigned
-addresses
Checking initrd at 0x600000
-0xecd666 (9229926 bytes)
Found zip with 73 entries
Parsing Kicklayout at 0xecd666 
(3320 bytes)
Booting config 1AOS_4.1FE


bboot output with Pegasos rom:
BBoot 0.1 (20.7.2023)
/
pci@80000000io fe000000/10000 mem 80000000/40000000
/pci@80000000/host:    0:0.0     11ab:6460 60000 646011ab 0000 0
/pci@80000000/ethernet:    0:1.0     10ec:8139 20000 813910ec 0109 0
  1000810        0 fe001100         0      100  
00001101
  2000814        0 80000000         0      100  
80000000
  2000830        0 80040000         0    40000  
80040000
/pci@80000000/display:    0:2.0     1234:1111 38000 11111234 0009 0
 42001010        0 81000000         0  1000000  
81000008
  2001018        0 80001000         0     1000  
80001000
/pci@80000000/display:    0:3.0     1002:68e1 30000 68e11002 0109 0
Truncated 64 bit BAR 43001810
Truncated 64 bit BAR 
03001818
 
42001810        0 90000000         0 10000000  9000000c 90000008
  2001818        0 80020000         0    20000  
80020004 80020000
  1001820        0 fe001200         0      100  
00001201
  2001830        0 80080000         0    20000  
80080000
/pci@80000000/pci1002,AA68:    0:4.0     1002:aa68 40300 aa681002 0209 0
Truncated 64 bit BAR 03002010
  2002010        0 80004000         0     4000  
80004004 80004000
/pci@80000000/isa:    0:c.0     1106:8231 60100 82311106 0000 f
/pci@80000000/ide:    0:c.1     1106:0571 1018f 05711106 010e 87
  1006110        0 fe001000         0        8  
00001001
  1006114        0 fe00100c         0        4  
0000100d
  1006118        0 fe001010         0        8  
00001011
  100611c        0 fe00101c         0        4  
0000101d
  1006120        0 fe001020         0       10  
00001021
/pci@80000000/usb:    0:c.2     1106:3038 c0300 30381106 0409 7
  1006220        0 fe001040         0       20  
00001041
/pci@80000000/usb:    0:c.3     1106:3038 c0300 30381106 0409 7
  1006320        0 fe001060         0       20  
00001061
/pci@80000000/other:    0:c.4     1106:8235 68000 82351106 0009 0
/pci@80000000/sound:    0:c.5     1106:3058 40100 30581106 0309 4
  1006510        0 fe001300         0      100  
00001301
  1006514        0 fe001030         0        4  
00001031
  1006518        0 fe001034         0        4  
00001035
/pci@80000000/pci1106,3068:    0:c.6     1106:3068 78000 30681106 0309 30
/pci@c0000000io f8000000/10000 mem c0000000/20000000
/pci@c0000000/host:    0:0.0     11ab:6460 60000 646011ab 0000 7


I was going to see what happened if I just hacked this function to insert the IRQ for my card but then realised that I don't have a PPC cross compiler and I'm not sure I've got the capacity for that tonight. Maybe tomorrow

Would if suffice to add " || pci_read_config8(devfn, REG_INTERRUPT_LINE) == 0xff"? Just for testing of course!

if (!pci_read_config8(devfnREG_INTERRUPT_LINE) {
                
pci_write_config8(devfnREG_INTERRUPT_LINE9);
                
printf(", set interrupt %04x"pci_read_config16(devfnREG_INTERRUPT_LINE));
            }


Amiga x5040 ı 16GB ı RX580
GB-A1000 060@100,
A1200 PiStorm32-Lite CM4
Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
redone for safety
everything works

qemu-system-ppc --version
QEMU emulator version 8.0.90 (v8.1.0-rc0)
Copyright (c) 2003-2023 Fabrice Bellard and the QEMU Project developers


qemu-system-ppc -M pegasos2 -cpu g3 -accel tcg -kernel /home/white/Scaricati/bboot-0.1/bboot -initrd /home/white/Scaricati/Kickstart.zip -m 2048 -serial stdio -device sm501 -drive if=none,id=hd,file=/home/white/Scaricati/32gb.raw,format=raw -device ide-hd,drive=hd,bus=ide.1 -netdev user,id=mynet0 -device rtl8139,netdev=mynet0 -vga none -drive if=none,id=hd1,file=/home/white/Scaricati/coffin.raw,format=raw -device ide-hd,drive=hd1,bus=ide.1


BBoot 0.1 (20.7.2023)
/pci@80000000: io fe000000/10000 mem 80000000/40000000
/pci@80000000/host: 0:0.0 11ab:6460 60000 | 646011ab 0000 7
Added assigned-addresses
/pci@80000000/pci126f,501: 0:1.0 126f:0501 38000 | 0501126f 0000 0
Added assigned-addresses, set interrupt 0009
2000810 0 80000000 0 4000000 | 00000000 ! 80000000
2000814 0 84000000 0 200000 | 00000000 ! 84000000
/pci@80000000/pci10ec,8139: 0:2.0 10ec:8139 20000 | 813910ec 0100 0
Fixed ROM BAR
Added assigned-addresses, set interrupt 0109
1001010 0 fe001200 0 100 | 00000001 ! 00001201
2001014 0 84200000 0 100 | 00000000 ! 84200000
2001030 0 84240000 0 40000 | 00000000 ! 84240000
/pci@80000000/isa: 0:c.0 1106:8231 60100 | 82311106 0000 8
Added assigned-addresses
/pci@80000000/ide: 0:c.1 1106:0571 1018f | 05711106 010e 87
Added assigned-addresses
1006110 0 fe001000 0 8 | 00000001 ! 00001001
1006114 0 fe001008 0 4 | 00000001 ! 00001009
1006118 0 fe001010 0 8 | 00000001 ! 00001011
100611c 0 fe001018 0 4 | 00000001 ! 00001019
1006120 0 fe001020 0 10 | 00000001 ! 00001021
/pci@80000000/usb: 0:c.2 1106:3038 c0300 | 30381106 0409 7
Added assigned-addresses
1006220 0 fe001040 0 20 | 00000001 ! 00001041
/pci@80000000/usb: 0:c.3 1106:3038 c0300 | 30381106 0409 7
Added assigned-addresses
1006320 0 fe001060 0 20 | 00000001 ! 00001061
/pci@80000000/other: 0:c.4 1106:8235 68000 | 82351106 0009 0
Added assigned-addresses
/pci@80000000/sound: 0:c.5 1106:3058 40100 | 30581106 0309 4
Added assigned-addresses
1006510 0 fe001100 0 100 | 00000001 ! 00001101
1006514 0 fe001030 0 4 | 00000001 ! 00001031
1006518 0 fe001034 0 4 | 00000001 ! 00001035
/pci@80000000/pci1106,3068: 0:c.6 1106:3068 78000 | 30681106 0309 30
Added assigned-addresses
/pci@c0000000: io f8000000/10000 mem c0000000/20000000
/pci@c0000000/host: 0:0.0 11ab:6460 60000 | 646011ab 0000 7
Added assigned-addresses
Checking initrd at 0x600000-0x94a2d5 (3449557 bytes)
Found zip with 66 entries
Parsing Kicklayout at 0x94a2d5 (3287 bytes)
Booting config 1: AmigaOS_4.1_Final_Edition
Loading loader.of
Loading kernel
Loading FastFileSystem
Loading SmartFilesystem
Loading JXFileSystem
Loading peg2ide.device.kmod
Loading battclock.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 newlib.library.kmod
Loading nonvolatile.library.kmod
Loading nvram.config
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 strap.kmod
Loading timer.device.kmod
Loading PCIGraphics.card
Loading ATIRadeon.chip
Loading 3dfxVoodoo.chip
Loading siliconmotion502.chip
Loading petunia.library.kmod
Loading usbresource.library
Loading usbsys.device
Loading hub.usbfd
Loading bootmouse.usbfd
Loading bootkeyboard.usbfd
Loading massstorage.usbfd
Loading uhci.usbhcd
Loading ohci.usbhcd
Loading ehci.usbhcd
Loading mounter.library
Starting exec

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
Regarding the network card, I have noticed that bboot doe fix a 64bit rom bar on the emulated RTL card so I guess it’s possible that might have been causing instability


Amiga x5040 ı 16GB ı RX580
GB-A1000 060@100,
A1200 PiStorm32-Lite CM4
Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@MartinW
Maybe your distro has a powerpc compiler and that could work. i only needed to install gcc-powerpc64-linux-gnu and binutils-powerpc64-linux-gnu packages.

To make it change ff to 9 as well that change should be enough howeveer there's also a difference in BAR values written for 64 bit BARs the bit meaning 64bit is cleared and the BAR is programmed as 32bit BAR. I'm not sure if that's correct or we should keep the 64bit value in the PCI register and only clear the bit in the phys.hi number for AmigaOS to see the BAR. You can test this by booting with bboot using the pegasos2.rom (you need to put the zip on the guest disk and edit bboot.fth with the zip size then boot hd:0 bboot.fth. As seen from the log bboot will reprogram the 64 bit BARs as 32bit (what you did from the script before but besides changing the assigned-addresses property also changes the value in the PCI reg). If this now broke it then we likely only have to edit the assigned addresses value and do the same when not using pegasos2.rom. I can make these changes but don't know which one is correct so that's what you should test and tell me which one works. (Or if somebody like Hans has some insight could chime in, I don't know much about graphics cards.)

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
Leave it with me. I’ve stopped for tonight and have family over this weekend so I don’t know what time I will get so it might be Sunday before I get a chance. I’ll update when I can.


Amiga x5040 ı 16GB ı RX580
GB-A1000 060@100,
A1200 PiStorm32-Lite CM4
Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@MartinW
Regarding network, that's not 64bit BAR but ROM BAR fix which is only needed because VOF gets that wrong so it would not happen with pegasos2.rom and therefore not likely to have any effect, also because I don't think AmigaOS uses the ROM (unless the pegasos2.rom runs that ROM which breaks something but you could disable with -device rtl8139,romfile="" and test that). If anything then maybe different IRQ mappings could have an effect but don't think there are differences in that but have to check the numbers to find out.

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@MartinW
No problem, it's not urgent so just let us know when you've found out something. Apart from IRQ I've meant these numbers:
/pci@80000000/display:    0:3.0     1002:68e1 30000 68e11002 0109 0
Truncated 64 bit BAR 43001810
Truncated 64 bit BAR 
03001818
 
42001810        0 90000000         0 10000000  9000000c 90000008
  2001818        0 80020000         0    20000  
80020004 80020000

where there are two changes for each bar:
the phys.hi ss field is changed from 3 to 2 (43001810 -> 42001810)
and the reg value is changed accordingly: 9000000c -> 90000008 clearing bit for 64 bit BAR type (see https://wiki.osdev.org/PCI#Base_Address_Registers) and I'm not sure bout this second change is correct. Can somebody tell what should we do here? Changing the first value is needed for the BAR to show up and not get the cannot handle SS == 3 or similar message in AmigaOS but what should the card be programmed for in this case? Should we still program it as 64 bit BAR?

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Quite a regular
Quite a regular


See User information
@MartinW and @all
Maybe it's easier to test if you don't have to compile it so I've just made a release 0.2 with the changes from today. Apart from now should work with zip created from macOS Finder it will change 0xff interrupts but keep the 64 bit type in the register value so it should replicate what your Forth script did. Let me know if this works better.

Go to top
Re: What the fastest possible x64 emulation way of OS4 today ?
Not too shy to talk
Not too shy to talk


See User information
@balaton

Thanks - I'm sure I can find the time to test with the interrupt change at some point tomorrow. I'll look at the cross-compiler packages. I have no problem looking into stuff at all. I just ran out of time tonight.

[edit]

Quote:
and the reg value is changed accordingly: 9000000c -> 90000008 clearing bit for 64 bit BAR type


Will be interesting to see how things are with the inclusion of setting the interrupt line when it's 0xff because I wasn't changing the reg values in my script I don't think. But that's not for any reason other than oversight. It might well have been something I should have been doing.

Go to top

  Register To Post
« 1 ... 48 49 50 (51) 52 53 54 ... 72 »

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2023 The XOOPS Project