Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Iridium Banner AMIStore App Store A1200/A600 4xIDE Interface

AuthorTopic: Kickstart ROM Replacement (Phase I) Bounty Assigned  (Read 13450 times)

0 Members and 1 Guest are viewing this topic.

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
  • Total likes: 0
    • http://www.iki.fi/sintonen/
Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #105 on: November 15, 2010, 02:40:22 PM »
Quote from: bloodline;591912
I can't believe I've waited so long to see this... I hope everyone understands the enormity of what this means!

Frankly I don't see the enormity. It gets interesting if/when Phase II gets completed.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
  • Total likes: 0
    • http://www.troubled-mind.com
Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #106 on: November 15, 2010, 02:50:07 PM »
Quote from: Piru;591931
Frankly I don't see the enormity. It gets interesting if/when Phase II gets completed.
The tyranny of Amiga Inc. is now over! This exists and it can't unexist :)

Toni has been instrumental in getting the 68k drivers this far, I have little doubt he will
succeed with phaseII and even if he doesn't, people will improve AROS 68k over time anyway :)

Offline Heiroglyph

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #107 on: November 15, 2010, 03:12:19 PM »
I'm sure Toni has the compatibility part covered although there are a lot of overall AROS changes that need to happen to get him there.

AROS is just somewhat source compatible, not remotely binary compatible.

I'm pretty sure we'll end up with 1.3 and 3.1 compatible ROMs plus AROS ROMs if we want any added functionality from AROS.  I just don't see how both in one ROM could work.

This is really awesome news though, it's a huge step forward.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
  • Total likes: 0
    • http://www.troubled-mind.com
Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #108 on: November 15, 2010, 03:34:22 PM »
Quote from: Heiroglyph;591935
I'm sure Toni has the compatibility part covered although there are a lot of overall AROS changes that need to happen to get him there.


The latest version of gcc is being a pain, but Jason wants to replace that with LLVM... What else is there that have I forgotten?

Quote

AROS is just somewhat source compatible, not remotely binary compatible.

Careful not to FUD here, from Jason's statement:

Quote

3. Initially binary compatability isnt needed with amigaos (not until atleast you can get the thing working again)

**- Met and exceeded. AmigaOS HUNK loading appears to work for several
** *trivial 'C' compiled AmigaOS 3.x routines (ie Echo, Dir, etc)


So actually it is "remotely" binary compatible...

Quote

I'm pretty sure we'll end up with 1.3 and 3.1 compatible ROMs plus AROS ROMs if we want any added functionality from AROS.  I just don't see how both in one ROM could work.

This is really awesome news though, it's a huge step forward.


Possibly the biggest step after the MiniMig/UAE freed us from ageing hardware :)

Offline vidarh

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #109 on: November 15, 2010, 03:37:27 PM »
Quote from: Heiroglyph;591935

I'm pretty sure we'll end up with 1.3 and 3.1 compatible ROMs plus AROS ROMs if we want any added functionality from AROS.  I just don't see how both in one ROM could work.


Do you have anything specific in mind? For the most part care has been taken to keep structures the same etc., and the only really major incompatibility I'm aware of that impacts "normal" user-level apps is the dos packet vs. device interface incompatibility which is slated to be fixed for 1.0; other than that there's a bunch of bugs and currently unimplemented bits and pieces of course, but that's a different matter.

Of course any code that relies on specific ROM offsets etc. to work will fail miserably, but most of that type of code started failing already with 1.3.
 

Offline Heiroglyph

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #110 on: November 15, 2010, 04:23:36 PM »
I wasn't trying to FUD, I'm a huge supporter of AROS on both 68k and x86.

I suppose I was a bit too harsh in saying "not remotely binary compatible", but having just a few cli commands is far from loading up a real application.  Those haven't even touched the UI yet.

There is a lot in AROS that wasn't in OS3.1, for example the HIDD, that are required to be in the ROM.  I'm not sure what the plan is, to support HIDD in ROM or have an OS3.1-like hardware banging arrangement, but shrinking it all down to 512k with HIDD seems unlikely.

Toni wants to make a 1.3 and 3.1 ROM for use with WinUAE and old games.  Anything that is added will use more ROM space and push it further from 100% compatibility.

As much as our goals overlap, make no mistake, Toni has stated a free WinUAE ROM as his target which makes sense given his primary project.

As vidarh noted, ABI 1.0 will alleviate several of the problems I indirectly referenced, but we're not there yet.  It will take more than just the ROM to get it functional.

I'm just saying that it's still a lot of work from all involved, not just Toni, but I'm extremely confident that he can pull off his part.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
  • Total likes: 0
    • http://www.troubled-mind.com
Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #111 on: November 15, 2010, 05:25:41 PM »
Quote from: Heiroglyph;591961
I wasn't trying to FUD, I'm a huge supporter of AROS on both 68k and x86.

I suppose I was a bit too harsh in saying "not remotely binary compatible", but having just a few cli commands is far from loading up a real application.  Those haven't even touched the UI yet.


As usual the subtleties of language are generally lost on a web forum :) The ABI for the graphics library does use the wrong address register at the moment so in that regard there are binary incompatibilities, but these will be fixed.

It's important not to get the wrong message across, best to stick with the facts as they stand.

Quote

There is a lot in AROS that wasn't in OS3.1, for example the HIDD, that are required to be in the ROM.  I'm not sure what the plan is, to support HIDD in ROM or have an OS3.1-like hardware banging arrangement, but shrinking it all down to 512k with HIDD seems unlikely.


A bare minimum should be possible with a 1Meg rom...

Quote

Toni wants to make a 1.3 and 3.1 ROM for use with WinUAE and old games.  Anything that is added will use more ROM space and push it further from 100% compatibility.


That is up to Toni, there are plenty of ways to save ROM space if need be, as you say direct hardware control rather than using the HIDDs. But that is up to whoever is building the ROM :)

Quote

As much as our goals overlap, make no mistake, Toni has stated a free WinUAE ROM as his target which makes sense given his primary project.

As vidarh noted, ABI 1.0 will alleviate several of the problems I indirectly referenced, but we're not there yet.  It will take more than just the ROM to get it functional.

I'm just saying that it's still a lot of work from all involved, not just Toni, but I'm extremely confident that he can pull off his part.


I am too.

Offline vidarh

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #112 on: November 15, 2010, 05:28:39 PM »
Quote from: Heiroglyph;591961
I wasn't trying to FUD, I'm a huge supporter of AROS on both 68k and x86.

I suppose I was a bit too harsh in saying "not remotely binary compatible", but having just a few cli commands is far from loading up a real application.  Those haven't even touched the UI yet.

There is a lot in AROS that wasn't in OS3.1, for example the HIDD, that are required to be in the ROM.  I'm not sure what the plan is, to support HIDD in ROM or have an OS3.1-like hardware banging arrangement, but shrinking it all down to 512k with HIDD seems unlikely.


I don't think the HIDD adds all that much - the code to bang the hardware needs to go somewhere. The HIDDs just adds a tiny bit of indirection. Some work might be needed to allow excluding generic versions of the code paths, though, and I'm sure there'll be other optimization work along similar lines to selectively reduce the code generated.

Also it doesn't necessarily all need to fit in 512k. First of all most Amigas can take 1MB kickstarts if you're first going to replace the ROM (and for Toni's needs this works fine for most uses anyway, as UAE handles 1MB ROMs). Secondly for most purposes it only needs to bootstrap and load the rest from a device, though of course this wouldn't be great for Minimig's or classics with just a floppy (but how many would leave their classic unexpanded and still want to use AROS on it?) and not ideal for UAE either.

The current x86 kickstart is 1.5MB, so 1MB doesn't seem too impossible, worst case by pushing various AROS-specific functionality to on disk modules. 512k might be a stretch. I might agree with you that if specific software has problems with that, then creating a custom 1.3 compatible kickstart might be worthwhile but I don't think you'll need to split 3.1 vs. "full AROS" as I don't think much software that works on 3.1 will make assumptions that can't be accommodated.

In terms of compatibility, there are some bits I know will cause minor problems (AmigaOS ConClip for example won't work with AROS console handler, and uses undocumented library calls, - but it'll be easy enough to prevent it from doing any damage by stubbing them out for cases where it's included on boot floppies etc.). I'm sure there are many others that I'm not aware of, so of course it'll be a lot of work, but since AROS is by no means set in stone and everything is set up for quite a bit of API breakage in AROS for 1.0 anyway, I think it'll get fixed.

The nice things about having the m68k port now is that we can start using real AmigaOS apps as test cases - that alone will probably make things progress a lot faster. For my console changes for example I wasted a lot of time cleaning up old console example code to get it to compile under AROS to compare with how it behaved under UAE, while with the m68k port I can hopefully soon run this code directly, side by side with two different UAE configs.
 

Offline Belial6

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #113 on: November 15, 2010, 07:20:49 PM »
I doubt many would want AROS on an unexpanded classic (Although I could be wrong), I think that it will be a big deal for systems like the MiniMig.  A lot of us want to be able to buy brand new classic Amigas.  Given how poorly AInc has behaved, many of us would rather they become a footnote denoting the dark time between Commodore and AROS.

You point out that most Amigas can take 1MB kickstarts.  Is there any case where we should not be able to use a 1MB kickstart in a MiniMig?
 

Offline vidarh

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #114 on: November 15, 2010, 09:32:34 PM »
Not all Minimigs have enough memory to be very usable that way. Also the current firmware doesn't support 1MB kickstarts AFAIK, but that ought to be easy enough to fix (or work around by having a 512KB kickstart that loads the rest as part of bootstrapping.

The FPGA Arcade cards or Natami are probably better suited... But we'll see how far down in size Toni and Jason manage to squeeze the ROMs..

It also depends on what you want to use it for. For trackloading hardware banging games a minimal kickstart would likely be enough. For system friendly harddisk images it won't matter too much if it'd need to load additional modules from disk. ADF images for games that are sort-of system friendly might be the biggest hassle, as they might rely on more of the kickstart and not have enough space to start messing with them to add additional modules.

EDIT: Despite the lack of 1MB kickrom support at least on my Minimig, I tried to just load the first 512K ROM anyway to see how far it got in the boot process - unfortunately it just went to a blank purple screen. Not too surprising, but I just had to give it a go anyway :)
« Last Edit: November 15, 2010, 09:36:55 PM by vidarh »
 

Offline Belial6

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #115 on: November 15, 2010, 10:32:15 PM »
Would the extra memory from the memory upgrade make it possible to have as much free usable memory as a non-upgraded MiniMig?
 

Offline little

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #116 on: November 15, 2010, 10:40:23 PM »
Quote from: vidarh;592024
ADF images for games that are sort-of system friendly might be the biggest hassle, as they might rely on more of the kickstart and not have enough space to start messing with them to add additional modules.

What is the problem if you install those to hard disk using whdload? Also, I do not think there will ever be a 1.3 compatible aros kickstart, but then again, whdload solves the problem quite nicely.
 

Offline nicholas

Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #117 on: November 15, 2010, 10:42:42 PM »
Quote from: little;592046
What is the problem if you install those to hard disk using whdload? Also, I do not think there will ever be a 1.3 compatible aros kickstart, but then again, whdload solves the problem quite nicely.


I'm sure there will be, do not underestimate the genius that is Toni Wilen! :D
“Een rezhim-i eshghalgar-i Quds bayad az sahneh-i ruzgar mahv shaved.” - Imam Ayatollah Sayyed  Ruhollah Khomeini
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
  • Total likes: 0
    • http://www.troubled-mind.com
Re: Kickstart ROM Replacement (Phase I) Bounty Assigned
« Reply #118 on: November 15, 2010, 10:46:39 PM »
Quote from: nicholas;592050
I'm sure there will be, do not underestimate the genius that is Toni Wilen! :D
And Jason's dedication to getting BCPL calls working ;)