Hi how is goes this amazing project?
Thanks for the interest. It is going slowly as what we are proposing will take some time. Especially as anyone involved is likely to be doing stuff in their spare time (which can be a rare commodity these days
).
I'm documenting the loader, interpreter and compiler. It's complex! But we need to understand it fully before we can make any major changes (like adding AGA).
Bug fixes are separate from adding AGA (and there hasn't been much feedback there yet!) but I would like to see a bug-free AMOS Pro (minus AGA) released as soon as we can manage it.
AMOS Pro already recognises AGA hardware even though it isn't implemented yet. It does this to ensure any AGA registers are set correctly to prevent non-AGA software suddenly turning on hi-res sprites. I haven't found any other references yet but it's early days. The original AMOS team were certainly well aware of what they were doing.
Another example is the problem of modifying code (relocations, etc.) on a system with a 68020 or higher. These have an instruction cache which must be flushed after changes are made to avoid the wrong instructions being picked up from the cache instead of memory. So they flush the cache through an operating system call.
They were well aware of where the Amiga hardware was heading back then.
Will keep everyone posted on progress but expect a few "quiet weeks" while we actually do some work rather than posting
.
As encouragement, I've attached a PDF of the loader/interpreter docs up to the start of where the AMOS libraries (extensions) are loaded. I'm currently in the middle of the next section. The diagrams are just about ready (along with multiple sketches of what's happening) just got to put it in Visio (wash my mouth out!). That section looks like the heart of where any context switching code for loading would need to go.
Please regard this attachment as very-much-work-in-progress (although constructive suggestions always welcome).
It all takes time