Machine detection by hardware
Re: Machine detection by hardware
ROM would be easy, I guess you would use Flash, so it is probably programmable on both the Q68 and your machine, no hardware change at all.
-
- Font of All Knowledge
- Posts: 3973
- Joined: Mon Dec 20, 2010 11:40 am
- Location: Sunny Runcorn, Cheshire, UK
Re: Machine detection by hardware
The Machine ID is programmed into SMSQ/E, so if we use that operating system, an update to SMSQ/E would required.Peter wrote:ROM would be easy, I guess you would use Flash, so it is probably programmable on both the Q68 and your machine, no hardware change at all.
Minerva and QDOS do not use Machine ID. But this could be added as a extension at boot time.
Personally, I would not want to use anything other than SMSQ/E, there are too many good features in the operating system.
Regards,
Derek
Derek
Re: Machine detection by hardware
Something like this was already done by Minerva I think, regarding the GC and SGC - there it's done by looking for ASCII 'GOLD' at a certain address in the GC/SGC ROM.
I suppose the idea is to identify the basic machine. This could be done by a flag (OK, a bit more, like a long word ) in the ROM assuming every QL style machine has some form of it. More bits would enable encoding of some basic 'capability' flags. And because it's (EP)ROM/Flash, it would be inverted, so that a basic 'unknown' result is all 1s. This would enable later definition of some bits and even easy setting of them without the need to reprogram the entire flash (flash and EPROM erase to all 1s and only 0s can be written in their place without the need to erase the entire thing or a large part in case of flash, called a 'sector').
Some discussion could be had on where in the ROM it would be. In all honesty, somewhere in the very lowest addresses is a better idea s every system needs to have something there, plus it leaves room for ROM code expansion (SMSQ/E...) without having to cater for skipping the ID word at a high address. I wonder if there is a byte or two or 4 unused down in the vector table area?
I suppose the idea is to identify the basic machine. This could be done by a flag (OK, a bit more, like a long word ) in the ROM assuming every QL style machine has some form of it. More bits would enable encoding of some basic 'capability' flags. And because it's (EP)ROM/Flash, it would be inverted, so that a basic 'unknown' result is all 1s. This would enable later definition of some bits and even easy setting of them without the need to reprogram the entire flash (flash and EPROM erase to all 1s and only 0s can be written in their place without the need to erase the entire thing or a large part in case of flash, called a 'sector').
Some discussion could be had on where in the ROM it would be. In all honesty, somewhere in the very lowest addresses is a better idea s every system needs to have something there, plus it leaves room for ROM code expansion (SMSQ/E...) without having to cater for skipping the ID word at a high address. I wonder if there is a byte or two or 4 unused down in the vector table area?
Re: Machine detection by hardware
(S)GC 2v49 ROM simply writes $3700 to SR, if it reads $2700 back its a 68000
David