SparcStation Core
- Grabulosaure
- Core Developer
- Posts: 79
- Joined: Sun May 24, 2020 7:41 pm
- Location: Mesozoic
- Has thanked: 3 times
- Been thanked: 92 times
- Contact:
SparcStation Core
(Related to this thread : viewtopic.php?t=545)
I've posted on GitHub the current sources of the SparcStation core with updated MiSTer framework.
I've wanted to cleanup that code for ages. And update support for the other boards I have (Xilinx SP605, Terasic C5G, MYIR FZ3...). Not done yet.
https://github.com/Grabulosaure/ss
There are two compilation modes
- SS5 : SparcStation 5 : Single CPU. MicroSparcII compatible CPU. Up to around 65MHz.
- SS20 : SparcStation 20 : Up to 3 CPUs can fit in MiSTer FPGA. SMP with write-back caches, MESI coherency. SuperSparc compatible CPU. Up to around 50MHz.
Current builds
http://temlib.org/pub/mister/SS/ss5.rbf
http://temlib.org/pub/mister/SS/ss20.rbf
http://temlib.org/pub/mister/SS/boot.rom
Place boot.rom in BIOS/SparcStation folder.
Use OS images in http://temlib.org/pub/mister/SS/ , passwords are the OS names, uppercase and lowercase characters. You can also make your own images using QEMU, or a real SparcStation.
The Ethernet interface isn't enabled on MiSTer. It used to work on the Xilinx board with a direct MII PHY.
SS5 is compatible with all the OSes which supported actual Sun4m SparcStations : Linux, NetBSD, OpenBSD, SunOS, Solaris, NextSTEP. Some OSes requires a special configuration.
SS20 seems to work with NetBSD with 3 CPUs. This is quite complex code and difficult to validate. Linux hardy ever supported multicore on these computers. I would like to be able to run multicore Solaris.
IIRC, the debug monitor (/soft/debugarm) is currently needed to properly activate SMP mode.
I've posted on GitHub the current sources of the SparcStation core with updated MiSTer framework.
I've wanted to cleanup that code for ages. And update support for the other boards I have (Xilinx SP605, Terasic C5G, MYIR FZ3...). Not done yet.
https://github.com/Grabulosaure/ss
There are two compilation modes
- SS5 : SparcStation 5 : Single CPU. MicroSparcII compatible CPU. Up to around 65MHz.
- SS20 : SparcStation 20 : Up to 3 CPUs can fit in MiSTer FPGA. SMP with write-back caches, MESI coherency. SuperSparc compatible CPU. Up to around 50MHz.
Current builds
http://temlib.org/pub/mister/SS/ss5.rbf
http://temlib.org/pub/mister/SS/ss20.rbf
http://temlib.org/pub/mister/SS/boot.rom
Place boot.rom in BIOS/SparcStation folder.
Use OS images in http://temlib.org/pub/mister/SS/ , passwords are the OS names, uppercase and lowercase characters. You can also make your own images using QEMU, or a real SparcStation.
The Ethernet interface isn't enabled on MiSTer. It used to work on the Xilinx board with a direct MII PHY.
SS5 is compatible with all the OSes which supported actual Sun4m SparcStations : Linux, NetBSD, OpenBSD, SunOS, Solaris, NextSTEP. Some OSes requires a special configuration.
SS20 seems to work with NetBSD with 3 CPUs. This is quite complex code and difficult to validate. Linux hardy ever supported multicore on these computers. I would like to be able to run multicore Solaris.
IIRC, the debug monitor (/soft/debugarm) is currently needed to properly activate SMP mode.
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: SparcStation Core
Fantastique! Merci Gaston.
I tried the core a few years back and since then I have been checking if something new was posted. Recently there has been a lot of inquiries and I was ready to make the following post:
"Gaston y a l'téléfon qui son
Et y a jamais person qui y répond"
For those curious about this cryptic post see:
https://en.wikipedia.org/wiki/Gaston_(comics)
https://en.wikipedia.org/wiki/Nino_Ferrer
I always had a problem to properly shutdown these OSes:
SunOS: I always get an automatic fsck upon reboot.
Solaris: I always destroy the HD.
NextStep: I have never been able to boot it, it always crashed during boot.
To anyone able to build a NetBSD image please post it somewhere, it would be very cool to run a multiprocessor on MISTer.
Thanks a lot for this core.
I tried the core a few years back and since then I have been checking if something new was posted. Recently there has been a lot of inquiries and I was ready to make the following post:
"Gaston y a l'téléfon qui son
Et y a jamais person qui y répond"
For those curious about this cryptic post see:
https://en.wikipedia.org/wiki/Gaston_(comics)
https://en.wikipedia.org/wiki/Nino_Ferrer
I always had a problem to properly shutdown these OSes:
SunOS: I always get an automatic fsck upon reboot.
Solaris: I always destroy the HD.
NextStep: I have never been able to boot it, it always crashed during boot.
To anyone able to build a NetBSD image please post it somewhere, it would be very cool to run a multiprocessor on MISTer.
Thanks a lot for this core.
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
Guys,
I have been probably doing something wrong.
From the Mister Menu:
I lunch SS5
I mount the .raw for nextstep
I select IOMMU rev: 11
Then when nextstep boots up:
After pressing 'enter' I get a system panic error message:
I did try with both options but to no avail.
Thanks!
I have been probably doing something wrong.
From the Mister Menu:
I lunch SS5
I mount the .raw for nextstep
I select IOMMU rev: 11
Then when nextstep boots up:
After pressing 'enter' I get a system panic error message:
Code: Select all
Sytem Panic:
chip didn't initialize
(Type 'r' to reboot or 'm' for monitor)
Thanks!
Re: SparcStation Core
Ha ha. Retro gaming and now Retro Working, use the software you used 20 years ago
-
- Posts: 78
- Joined: Wed Nov 04, 2020 10:03 am
- Has thanked: 25 times
- Been thanked: 16 times
Re: SparcStation Core
Does this run MAE (Macintosh Application Environment) like seen in this video?
https://www.youtube.com/watch?v=VH5HVNq23sk
https://www.youtube.com/watch?v=VH5HVNq23sk
- Grabulosaure
- Core Developer
- Posts: 79
- Joined: Sun May 24, 2020 7:41 pm
- Location: Mesozoic
- Has thanked: 3 times
- Been thanked: 92 times
- Contact:
Re: SparcStation Core
Sorry, it was a problem with the fake Ethernet interface. Which still needs to be enabled : Set ETHERNET => true in ss_core.vhd.Alkadian wrote: ↑Thu Mar 31, 2022 11:53 am Guys,
I have been probably doing something wrong.
From the Mister Menu:
I lunch SS5
I mount the .raw for nextstep
I select IOMMU rev: 11
Then when nextstep boots up:
After pressing 'enter' I get a system panic error message:I did try with both options but to no avail.Code: Select all
Sytem Panic: chip didn't initialize (Type 'r' to reboot or 'm' for monitor)
Thanks!
I've updated the SS5 core :
http://temlib.org/pub/mister/SS/ss5.rbf.
NextSTEP is very picky. I think that there are some bugs in the OS that were never fixed.
- Select a fresh copy of the disk image.
- Select IOMMU = 11 and L2TLB=OFF (not sure it's still necessary)
- Type "-V" in boot menu, then Control-C when prompted looking for the network connection
- Booting is very slow because cache is disabled during a part of it, for compatibility. And because booting these computers was never fast anyway.
Old picture (2015) with the Xilinx SP605 board :caffeinekid wrote: ↑Thu Mar 31, 2022 8:49 pm Does this run MAE (Macintosh Application Environment) like seen in this video?
https://www.youtube.com/watch?v=VH5HVNq23sk
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
@Grabulosaure,Grabulosaure wrote: ↑Thu Mar 31, 2022 11:47 pmSorry, it was a problem with the fake Ethernet interface. Which still needs to be enabled : Set ETHERNET => true in ss_core.vhd.Alkadian wrote: ↑Thu Mar 31, 2022 11:53 am Guys,
I have been probably doing something wrong.
From the Mister Menu:
I lunch SS5
I mount the .raw for nextstep
I select IOMMU rev: 11
Then when nextstep boots up:
After pressing 'enter' I get a system panic error message:I did try with both options but to no avail.Code: Select all
Sytem Panic: chip didn't initialize (Type 'r' to reboot or 'm' for monitor)
Thanks!
I've updated the SS5 core :
http://temlib.org/pub/mister/SS/ss5.rbf.
NextSTEP is very picky. I think that there are some bugs in the OS that were never fixed.
- Select a fresh copy of the disk image.
- Select IOMMU = 11 and L2TLB=OFF (not sure it's still necessary)
- Type "-V" in boot menu, then Control-C when prompted looking for the network connection
- Booting is very slow because cache is disabled during a part of it, for compatibility. And because booting these computers was never fast anyway.
Old picture (2015) with the Xilinx SP605 board :caffeinekid wrote: ↑Thu Mar 31, 2022 8:49 pm Does this run MAE (Macintosh Application Environment) like seen in this video?
https://www.youtube.com/watch?v=VH5HVNq23sk
Please there is no need to say sorry at all! Many thanks for this amazing core!!
Thanks for your explanations re the fake ethernet interface. Funny enough last evening I was reading this:
http://www.verycomputer.com/39_bce204ab67ca5065_1.htm
about the same panic error with real hardware!
Anyways, I have edited the line ETHERNET => true. Would you please let me know how to load the ss_core.vhd?
Also, when you get a chance could you please have a look at the points below?
1. When I type "-v" in boot menu, the "-" character gets recognised as a "space", in fact the cursor moves to the right. However, after typing only "v" it seems that the system boots up in verbose mode.
2. Could you please advise on which line should I look for on the screen before pressing "Control-C when prompted looking for the network connection"?
3. Am I supposed to rename the boot.rom to something else? Reason being that I can't see the file when I select the correct path /BIOS/SparcStation from the Mister menu.
Thanks a lot!
- GreyAreaUK
- Posts: 133
- Joined: Wed Feb 02, 2022 12:58 pm
- Has thanked: 62 times
- Been thanked: 23 times
Re: SparcStation Core
Try BIOS.ROM (not sure if case matters)
Orbiting inside the Roche Limit of sanity.
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: SparcStation Core
I guess you are running the update all script with BIOS getter enabled (which I don't).
Recently there are been a few posts of users having problems with BIOS roms, in each case they had the bios in BIOS/<Core Name>, in general the bios is in games/<Core Name>.
This got me intrigued and I checked on https://github.com/theypsilon/MiSTer_BIOS_SCRIPTS.
What it says:
This script downloads all bios files to /media/fat/BIOS.
What it does no say:
This directory is merely a repository for your bioses. You have to copy the bios in the proper directory in accordance with what the core requires, this is usually games/<Core Name>.
There is a hint about that:
However, we have chosen some sane defaults to be copied to the /games/ directory.
For the SparcStation you assumed you had to create a BIOS/SparcStation directory and place the bios there.
I guess you have been tricked all this time:
Take for example the NeoGeo core, you have been assuming that 000-lo.lo, sfix.sfix and uni-bios.rom were loaded from BIOS/NeoGeo, now have a look in games/NeoGeo, you will find them there and you did not do it, the BIOS getter did it and they are the ones being loaded.
Recently there are been a few posts of users having problems with BIOS roms, in each case they had the bios in BIOS/<Core Name>, in general the bios is in games/<Core Name>.
This got me intrigued and I checked on https://github.com/theypsilon/MiSTer_BIOS_SCRIPTS.
What it says:
This script downloads all bios files to /media/fat/BIOS.
What it does no say:
This directory is merely a repository for your bioses. You have to copy the bios in the proper directory in accordance with what the core requires, this is usually games/<Core Name>.
There is a hint about that:
However, we have chosen some sane defaults to be copied to the /games/ directory.
For the SparcStation you assumed you had to create a BIOS/SparcStation directory and place the bios there.
I guess you have been tricked all this time:
Take for example the NeoGeo core, you have been assuming that 000-lo.lo, sfix.sfix and uni-bios.rom were loaded from BIOS/NeoGeo, now have a look in games/NeoGeo, you will find them there and you did not do it, the BIOS getter did it and they are the ones being loaded.
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
@GreyAreaUK, @jca
Thanks for your help!
I did try to to place the boot.rom in games/SparcStation but the file was not visible from there either.
I must admit I haven't tried with capital letters though.
I will try again tonight as soon as I come back home.
For some strange reasons, I seem to recall that I have read somewhere in the forum that somebody changed the name to something like boot1.rom.
Anyways. I will let you know how it goes.
Thanks!
Thanks for your help!
I did try to to place the boot.rom in games/SparcStation but the file was not visible from there either.
I must admit I haven't tried with capital letters though.
I will try again tonight as soon as I come back home.
For some strange reasons, I seem to recall that I have read somewhere in the forum that somebody changed the name to something like boot1.rom.
Anyways. I will let you know how it goes.
Thanks!
- GreyAreaUK
- Posts: 133
- Joined: Wed Feb 02, 2022 12:58 pm
- Has thanked: 62 times
- Been thanked: 23 times
Re: SparcStation Core
Try renaming it to ‘BIOS.ROM’ - I think the core is looking for files with ‘bios’ in the name.
Orbiting inside the Roche Limit of sanity.
- GreyAreaUK
- Posts: 133
- Joined: Wed Feb 02, 2022 12:58 pm
- Has thanked: 62 times
- Been thanked: 23 times
Re: SparcStation Core
Interesting - when I went looking for it it would only display files with 'bios' in the name, but I guess if it's in the games folder it might behave differently. I'll have a play when I next get chance.
Orbiting inside the Roche Limit of sanity.
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: SparcStation Core
... but I guess if it's in the games folder it might behave differently ...
[/quote]
I am really confused: where do you have it?
Does loading bioses also looks in the BIOS folder?
Is my previous post regarding bioses having to generally be in games/<CoreName> wrong?
I will make some tests later on today.
- douglasamcintosh
- Posts: 35
- Joined: Sun Jul 12, 2020 12:40 pm
- Has thanked: 19 times
- GreyAreaUK
- Posts: 133
- Joined: Wed Feb 02, 2022 12:58 pm
- Has thanked: 62 times
- Been thanked: 23 times
Re: SparcStation Core
All I can currently say for sure is that when I had the file stored under BIOS/SparcStation I had to (a) go looking for it directly, and (b) it could only be found if it was called 'BIOS.ROM' (although I'm fairly sure the extension didn't matter).jca wrote: ↑Fri Apr 01, 2022 3:05 pmI am really confused: where do you have it?GreyAreaUK wrote: ↑Fri Apr 01, 2022 2:51 pm ... but I guess if it's in the games folder it might behave differently ...
Does loading bioses also looks in the BIOS folder?
Is my previous post regarding bioses having to generally be in games/<CoreName> wrong?
I will make some tests later on today.
When I get a sec (tomorrow, likely) I'll try moving it into the Games/SparcStation folder and rename it 'boot.rom' and see what happens.
I've been able to boot into NeXT using the former method, so it sort of works
(The method I was using, I mean - no criticism of the core intended!)
Orbiting inside the Roche Limit of sanity.
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
@Grabulosaure, @jca, @GreyAreaUK ,
Great news guys!! It's working!!
I have used the new .rbf updated by @Grabulosaure and I have set L2TLB=OFF (that actually did the trick). This time the system asked me to type Control-C and it booted straight away!
The boot.rom has been placed in /games/Sparcstation. It didn't work by putting in /BIOS/Sparcstation
Happy boy now
Great news guys!! It's working!!
I have used the new .rbf updated by @Grabulosaure and I have set L2TLB=OFF (that actually did the trick). This time the system asked me to type Control-C and it booted straight away!
The boot.rom has been placed in /games/Sparcstation. It didn't work by putting in /BIOS/Sparcstation
Happy boy now
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: SparcStation Core
Update
First: when you start the core it takes 1min30s before the OpenBios screen shows up on the screen. During this time the screen will flash briefly, I suppose during video initialization.
Second: My setup.
I am in the process of testing the new downloader and as I don't want to mess up my regular setting I used a new SD card and a new USB drive formatted ext4 which is case sensitive. I do not use the BIOS getter and do not want to create a BIOS directory so my tests are done only using games/SparcStation.
Third: the goodies.
I went almost insane doing these tests.
Test with boot.rom which is the name I have been using all these years. As stated earlier it works.
Test with BOOT.ROM. It also works which is strange as I never saw this before on a case sensitive file system. For example I had trouble with the Archie core. The rom is distributed as riscos.rom but only RISCOS.ROM works on a case sensitive file system.
Test with BIOS.ROM. it also works. So I got an idea.
Test with no rom at all: spot on, it also works.
Conclusion:
The core has a built in rom which is overwritten if a proper rom is found in games/SparcStation.
The name of the rom has to be boot.rom as it is the only one which is loaded when starting the core: Loading progress popup when starting the core, no popup when using different names.
For those using BIOS getter: make sure that you have BIOS/SparcStation/boot.rom and delete games/SparcStation/boot.rom. If you see the progress bar when starting the core, which I doubt will happen, it means it works with the rom only in the BIOS directory.
I did not check the version displayed by OpenBios both for the built in rom and the boot.rom so better use the later to be sure.
Someone mentioned that he could select the rom from the menu: you must be using the old version of the core (SS.rbf), the new cores are SS5.rbf (1 cpu) and SS20 (3 cpus). On the new version I did not see this feature.
First: when you start the core it takes 1min30s before the OpenBios screen shows up on the screen. During this time the screen will flash briefly, I suppose during video initialization.
Second: My setup.
I am in the process of testing the new downloader and as I don't want to mess up my regular setting I used a new SD card and a new USB drive formatted ext4 which is case sensitive. I do not use the BIOS getter and do not want to create a BIOS directory so my tests are done only using games/SparcStation.
Third: the goodies.
I went almost insane doing these tests.
Test with boot.rom which is the name I have been using all these years. As stated earlier it works.
Test with BOOT.ROM. It also works which is strange as I never saw this before on a case sensitive file system. For example I had trouble with the Archie core. The rom is distributed as riscos.rom but only RISCOS.ROM works on a case sensitive file system.
Test with BIOS.ROM. it also works. So I got an idea.
Test with no rom at all: spot on, it also works.
Conclusion:
The core has a built in rom which is overwritten if a proper rom is found in games/SparcStation.
The name of the rom has to be boot.rom as it is the only one which is loaded when starting the core: Loading progress popup when starting the core, no popup when using different names.
For those using BIOS getter: make sure that you have BIOS/SparcStation/boot.rom and delete games/SparcStation/boot.rom. If you see the progress bar when starting the core, which I doubt will happen, it means it works with the rom only in the BIOS directory.
I did not check the version displayed by OpenBios both for the built in rom and the boot.rom so better use the later to be sure.
Someone mentioned that he could select the rom from the menu: you must be using the old version of the core (SS.rbf), the new cores are SS5.rbf (1 cpu) and SS20 (3 cpus). On the new version I did not see this feature.
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: SparcStation Core
@Alkadian
I was typing my post while you made yours, so no need to test when using the BIOS directory.
Glad it is working for you. Which OSes did you try? At the end of my tests I wanted to start an OS but was unable to do it in the short time I had left, it has been a long time I did not use the core and must have forgotten how to do it. I will see this evening and ask for help if needed.
I was typing my post while you made yours, so no need to test when using the BIOS directory.
Glad it is working for you. Which OSes did you try? At the end of my tests I wanted to start an OS but was unable to do it in the short time I had left, it has been a long time I did not use the core and must have forgotten how to do it. I will see this evening and ask for help if needed.
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
@jca,
Hahaha, yes we did
I have tried Nextstep and obviously it worked. I have also tried both Solaris and SunOS but with no luck. I will try again later on.
I have noted down all the steps required to get Nextstep to work. So just give me a shout. I will probably be late till night enjoying this core
Hahaha, yes we did
I have tried Nextstep and obviously it worked. I have also tried both Solaris and SunOS but with no luck. I will try again later on.
I have noted down all the steps required to get Nextstep to work. So just give me a shout. I will probably be late till night enjoying this core
Re: SparcStation Core
I have the same results and setup. I can only get NeXT to boot with the latest SS5.rbf. Solaris and SunOS look to have trouble mounting their disks.Alkadian wrote: ↑Fri Apr 01, 2022 7:10 pm @jca,
Hahaha, yes we did
I have tried Nextstep and obviously it worked. I have also tried both Solaris and SunOS but with no luck. I will try again later on.
I have noted down all the steps required to get Nextstep to work. So just give me a shout. I will probably be late till night enjoying this core
- Alkadian
- Top Contributor
- Posts: 728
- Joined: Thu May 28, 2020 9:55 am
- Has thanked: 294 times
- Been thanked: 119 times
Re: SparcStation Core
Thanks for letting us know.kconger wrote: ↑Fri Apr 01, 2022 7:15 pmI have the same results and setup. I can only get to NeXT to boot with the latest SS5.rbf. Solaris and SunOS look to have trouble mounting their disks.Alkadian wrote: ↑Fri Apr 01, 2022 7:10 pm @jca,
Hahaha, yes we did
I have tried Nextstep and obviously it worked. I have also tried both Solaris and SunOS but with no luck. I will try again later on.
I have noted down all the steps required to get Nextstep to work. So just give me a shout. I will probably be late till night enjoying this core