Author Topic: Any one want to help build a community made OS 9.3?  (Read 149945 times)

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #100 on: January 25, 2016, 06:39:56 AM »
I had a bit of an interesting theory over the past weekend.
We are trying to boot machines that are not supported by 9 but are supported by X.
In researching I know that open firmware loads the rom. Runs the forth script at the beginning of the rom. Transfers execution to the trampoline code (the elf executable I've discussed earlier). Initializes hardware based on info from open firmware via the open firmware client interface.
Once everything is initialized it tells open firmware to stop and transfers control to the initialization code in the loaded toolbox rom.
My first goal was to get support for the newer G4's that require an open firmware patch to boot into OS 9.  These cpu's do not require this patch to boot X.  BootX is the boot loader in OS X that does the same thing as the trampoline code in the OS 9 ROM.  BootX is open source so it can easily be modified.  It knows how to initialize these cpu's (as well as some of the hardware required for boot in the G5's).  If I were to take bootx and modify the code to load a toolbox rom instead of a mach kernel and then attach the toolbox rom as a payload to it (much like the toolbox rom is embeded in the rom file we normally boot) then we would in theory be able to get around the early boot problems for all OS X only machines.  This doesn't mean they will work after this stage, but it will fix the early boot and the detection of what's bootable by the system.

I realize that there is not a strong liking of OS X around here (and you can lump me into that crowd), but this idea is just stealing a boot loader from X that really doesn't have much to do with X, so I think this is a good idea.
If it ain't broke, don't fix it, or break it so you can fix it!

Offline DieHard

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2366
Re: Any one want to help build a community made OS 9.3?
« Reply #101 on: January 25, 2016, 08:16:52 AM »

BootX is the boot loader in OS X that does the same thing as the trampoline code in the OS 9 ROM.  BootX is open source so it can easily be modified.   If I were to take bootx and modify the code to load a toolbox rom instead of a mach kernel and then attach the toolbox rom as a payload to it...

I realize that there is not a strong liking of OS X around here (and you can lump me into that crowd), but this idea is just stealing a boot loader from X that really doesn't have much to do with X, so I think this is a good idea.

This is a real break thru in my opinion !   We are NOT X-aphobic and I don't think anyone cares what dances across the screen before 9 boots... so please hack away at the Bootx code if you can make it load the OS9 ROM :)

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #102 on: March 03, 2016, 06:12:45 PM »
Sorry all, but I'm a little slow at things lately.

The route of bootx is becoming a very nice option.

One of the things I've found going through this is that it makes a lot of open firmware calls (which is to be expected).  The nice thing though is it's sort of documentation on what a lot of the forth words are for various hardware devices that need to be initialized early on.  On of those devices is the mmu. I still have a lot of digging to do, but it might be possible, and that's a big might, to enable the full 2GB of ram on some of the G4's through some creative open firmware scripts (well at least as early test I guess). 
If it ain't broke, don't fix it, or break it so you can fix it!

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #103 on: March 18, 2016, 06:39:22 AM »
GOOD NEWS!!!!!

I've noticed there have been some people who have to go in and use an nvramrc script to change the cpu-version to make 9 bootable.
This works well and is usefull, but if you ever have to reset the nvram or if your batteries die and it resets then you have to re-apply this patch.  Yes it's not painful, but I'd rather not have to do it.

Now iMic did a lot of awesome work with hacking the boot script that loads the trampoline code that loads the toolbox.  So since his updates worked well I followed the same path.  I have updated the boot script in the rom file to check for a G4 cpu with a newer cpu-version that isn't supported and change it to one that is.  This does the same thing as the nvramrc but will never have to be re-applyed and will make booting easier for people who are not familiar with open firmware or are scared of it.

Currently the file I modified doesn't boot for two reasons.  One, when I edited it the creator/file types got messed up so you have to manually force open firmware to ignore that and load it anyway.  Two, I didn't get the file adjusted to make the trampoline/elf portion re-aligned ok.  It was really really late when I finished this up and needed to get to bed, but it was able to load and run the script and did set the cpu-version and did try to boot the trampoline code, it was just at the wrong location.

So once I get those two items fixed (hopefully this evening) I will have a new rom for people to test/enjoy.

This still doesn't provide full valid support for those cpu's, but it will get more machines the option too boot or at least boot far enough to figure out what else needs to be changed.
If it ain't broke, don't fix it, or break it so you can fix it!

Online Protools5LEGuy

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2749
Re: Any one want to help build a community made OS 9.3?
« Reply #104 on: March 18, 2016, 06:49:44 AM »
These updates just make my day!

Thanks!
Looking for MacOS 9.2.4

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: Any one want to help build a community made OS 9.3?
« Reply #105 on: March 19, 2016, 09:06:22 AM »
Great!
This will allow to those 7447 and 7448 upgrade cards to work without caring about the Open Firmware flashing :)
Please don't PM about things that are not private.

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #106 on: March 19, 2016, 09:04:03 PM »
And as promised (though a little later than mentioned)

I have tested this and have not had issues.  But having said that, I am not responsible if it does anything bad to your machine so test with caution.

I've modified it in a way that makes it generic.
It checks for a G4 and if present then checks the cpu version and modifies it if necessary.
This means it will boot on G3's and G4's that were already supported without modifying anything.

If it is not working I would appreciate the details of the machine it doesn't work on.

ROM File only
http://ww.gnerder.com/files/rom.sit

As a side note, when you've spent most of your career in languages like c, c# and the likes, Forth makes little sense at first.
If it ain't broke, don't fix it, or break it so you can fix it!

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: Any one want to help build a community made OS 9.3?
« Reply #107 on: March 22, 2016, 08:17:30 AM »
are ROM files language specific? (they shouldnt?)
insert arbitrary signature here

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #108 on: March 22, 2016, 11:07:43 AM »
are ROM files language specific? (they shouldnt?)
I'm not sure if they are or not.  They might be.
When looking at the resources in there it looked like it was only US English on the one I edited.
But I haven't really looked into it much.
Are you seeing some sort of issues related to this?
If it ain't broke, don't fix it, or break it so you can fix it!

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: Any one want to help build a community made OS 9.3?
« Reply #109 on: March 22, 2016, 11:38:19 AM »
are ROM files language specific? (they shouldnt?)

Yes, they are language specific. But if you use a Italian ROM, while the remaining system files are in French by example, you only have a couple of menu items in italian so It is perfectly usable. Or you can easily replace this language specific resources, because they are really few.
Please don't PM about things that are not private.

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #110 on: March 22, 2016, 11:55:40 AM »
are ROM files language specific? (they shouldnt?)

Yes, they are language specific. But if you use a Italian ROM, while the remaining system files are in French by example, you only have a couple of menu items in italian so It is perfectly usable. Or you can easily replace this language specific resources, because they are really few.

So should I provide localized rom's then? 
If it ain't broke, don't fix it, or break it so you can fix it!

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: Any one want to help build a community made OS 9.3?
« Reply #111 on: March 22, 2016, 12:54:36 PM »
So should I provide localized rom's then?

I think it isn't necessary. It will be a nightmare to provide a dozen or two of localized ROMs. If someone is using a localized System version and wish to localize your generic ROM, it should copy/paste a few resources with ResEdit and it's done :)
Please don't PM about things that are not private.

Offline nanopico

  • Moderator
  • Platinum Member
  • *****
  • Posts: 767
Re: Any one want to help build a community made OS 9.3?
« Reply #112 on: March 22, 2016, 01:07:29 PM »
So should I provide localized rom's then?

I think it isn't necessary. It will be a nightmare to provide a dozen or two of localized ROMs. If someone is using a localized System version and wish to localize your generic ROM, it should copy/paste a few resources with ResEdit and it's done :)

Works for me.

On a side note, has any one tried the ROM i worked up here and is it working?  I didn't get to do as much testing as I like and due to some remodeling at home, I'm not able to do much dev work at the moment.
If it ain't broke, don't fix it, or break it so you can fix it!

Offline IIO

  • Platinum Member
  • *****
  • Posts: 4439
  • just a number
Re: Any one want to help build a community made OS 9.3?
« Reply #113 on: March 23, 2016, 10:21:01 PM »
are ROM files language specific? (they shouldnt?)

Yes, they are language specific. But if you use a Italian ROM, while the remaining system files are in French by example, you only have a couple of menu items in italian so It is perfectly usable. Or you can easily replace this language specific resources, because they are really few.

ok, so while it will work to replace it (well of course it does) it might still change a few words somewhere where the user will see it.

@nano:
having different language files would be nice, but i believe that it could be less work for you to supply an updater/patch instead of the whole ROM (i.e. without checking the file where the patch is applied but with description for what exact ROM file and version it was made.)

for/from what is it, btw? OS9General.dmg-style or a QS 2002 golden master OS9?)


insert arbitrary signature here

Offline MacOS Plus

  • Gold Member
  • *****
  • Posts: 418
  • The 9serve Lives!
Re: Any one want to help build a community made OS 9.3?
« Reply #114 on: March 24, 2016, 05:55:00 PM »
Great!
This will allow to those 7447 and 7448 upgrade cards to work without caring about the Open Firmware flashing :)

  If nothing else happened aside from this it would be fantastic just by itself!  Not having to worry about the Open Firmware nonsense is great for the less technically-inclined users and also simply much less of a pain in the butt for the savvy.  Knowing that I wouldn't have to worry about the OF settings getting lost randomly would bring great peace of mind.  If it can be incorporated into the 9.2.2 restore image so we have a bootable CD that works all of the time with upgrade CPUs it would save me a lot of hell and messing around.  It would also give me the freedom to move one of my CPU upgrades between systems for testing much more easily.  The one in my Quicksilver required the installer program to make the OF edits, so it was a pain.  (I don't know how much of this becomes a moot point if the hack of bootx is successful.)

  The only other things I'd suggest in improving the current 9.2.2 Universal would be to keep the multiprocessing support out of the system folder by default, and also put the final ATI drivers in.  As I mentioned before, both of these snags hit me in the same system.  My video card wouldn't work without the final ATI update applied.  The only problem I had remaining after that was some of the extensions for the older ATI cards also had to be disabled in order to prevent a third freeze with the particular card I was using.  Oddly the ATI freezing issue only occurred on one of two MDD FW800s, I really don't know why.

  I know it's kinda outside the scope of the current 9.2.2 Universal restore method, but it would be nice if there was some mechanism to detect hardware and only copy the necessary ATI files.  Also, is there any plan to incorporate the hacked older version of multiprocessing support, that does work, into the restore image?  I am running it without issue after manually substituting it.

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: Any one want to help build a community made OS 9.3?
« Reply #115 on: March 25, 2016, 07:09:21 AM »
Also, is there any plan to incorporate the hacked older version of multiprocessing support, that does work, into the restore image?  I am running it without issue after manually substituting it.
About what "hacked older version of multiprocessing support" are you talking about?
What version works with what CPU upgrade?
Because I have a NewerTech 7448 on a Sawtooth and I have tried every thing, -even the Sonnet hacked multiprocessing support file - and nothing works.
Please don't PM about things that are not private.

Offline MacOS Plus

  • Gold Member
  • *****
  • Posts: 418
  • The 9serve Lives!
Re: Any one want to help build a community made OS 9.3?
« Reply #116 on: March 25, 2016, 08:44:26 PM »
Also, is there any plan to incorporate the hacked older version of multiprocessing support, that does work, into the restore image?  I am running it without issue after manually substituting it.
About what "hacked older version of multiprocessing support" are you talking about?
What version works with what CPU upgrade?
Because I have a NewerTech 7448 on a Sawtooth and I have tried every thing, -even the Sonnet hacked multiprocessing support file - and nothing works.

  I don't know if it works for all machine/upgrade combinations but it is working on my FW800 with Sonnet MDX 1.8GHz.  The two CPUs are recognized by System Profiler using the file I found.  Waking from sleep doesn't return video but that could be for a number of other reasons including purely the current video card and extension (GeForce 2MX ADC), or the fact it's a FW800 motherboard.  I prefer to not sleep most of my Macs anyway because this has been trouble at times even under what should be ideal circumstances, most often video card related.  The file on the Universal 9.2.2 CD most certainly didn't work on my setup at all, so I at least see my current arrangement as a vast improvement.

I found the file download via this posting on the 68kmla.org forums:

https://68kmla.org/forums/index.php?/topic/15421-yay-sonnet-18ghz-duet-on-its-way/
(See post #5)

The direct link to the file is:

www.vintagecomp.com/sell/Sonnet/updatedCPU.sit

  I don't know if this file is the original that Sonnet hacked, or if it was a different one independently hacked.  It reports as Apple CPU Plugins - Mac OS CPU Software 4.5 - Version 3.5.  (I'm not sure how easy it would be to tell if it had different data internally from the Sonnet-hacked version.)  If that is already the one you have then perhaps it isn't 100% compatible with the NewerTech or the Sawtooth.  I have a NewerTech dual 1.8GHz in my Quicksilver (OSX 10.4/10.5) which I could test in my Sawtooth to see what happens.  I just have to locate the jumper settings and the installer again.  (It's been many years since it was installed in the QS.)

  In any case, it would be a hell of a lot better to have this file available than to see so many people never able to enable multiprocessing at all.  Perhaps it should be added to the list of things to test so that forum members can try it out on a wide range of platforms and report back.  Eventually someone better-versed in the system files might be able to dig into these files and figure out exactly what was altered and what, if anything, can be improved.

Offline GaryN

  • Platinum Member
  • *****
  • Posts: 1566
  • active member
Re: Any one want to help build a community made OS 9.3?
« Reply #117 on: March 26, 2016, 12:36:36 PM »
I have the same setup in a 3,6. I think the MP file was written by Sonnet specifically for the MDX. Still worth a try though. I was wrong once before back in '02…

Offline MacOS Plus

  • Gold Member
  • *****
  • Posts: 418
  • The 9serve Lives!
Re: Any one want to help build a community made OS 9.3?
« Reply #118 on: March 27, 2016, 09:09:18 AM »
  You'd think it would have really put a dent in Sonnet's MP product sales if they'd never gotten it to work in all the other AGP machines except for the MDD.  Perhaps the first thing I'll do with my QS (before transplanting to the Sawtooth) is to do a 9.2.2 restore and test on that platform.  If it works there then I will try with either of my Sawtooths (I have two of them).

  Hopefully the MP files can eventually be analyzed by one of the 'brains' that is working on the OS9 and machine support updates so we know exactly how they work and how to patch them properly.  Perhaps a much later revision of the file could have the same patch(es) applied.

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: Any one want to help build a community made OS 9.3?
« Reply #119 on: March 27, 2016, 11:17:20 AM »
ROM File only
http://ww.gnerder.com/files/rom.sit

@nanopico: the download link is not available.
can you please re-upload this file? I wish to perform some test with it ...
Please don't PM about things that are not private.