Indeed, as are we all. Thanks guys, truly amazing.We do know what we're doing - we are just astound that it works
Gotta reverse engineer the 1400 board to meet that spec, you can add PCMCIA WiFi with ease to your breakout board and boot from the other slot when necessary.Considering apm's "Compact Mac retina display" hack (640x480 internal CRT) what we need now is a 603e based CPU card. So we could run a networked 640x480 grayscale Mac OS 9.1 on SE/30, and boot it from ROM ...
All that's left now is an endless fight about how the routine that displays a boot splash screen should be implemented now
Now, Iāve never programmed a rom or boot routine or whatever sorcery would be needed haha. But in my uninformed mind a simple timer loop switching images every X milliseconds should do the trick haha. If thereās space enough for x amount of images in the rom of course.Great idea, but probably in the interesting notion category? Methinks such would require intelligence on the board. Splash seems to me to be a simple, binary on/off decision determined by machine state of the card? It's on when the card fires up, but flipped off by the time is the startup screen needs to be displayed? Wondering if a simple counter setup could do the dirty?
So curious now, especially about which ot the three sorcerers fields the question! I wonder if there's room in the ROM corner for a complex GS image? What does the card's native boot screen look like?
edit: I'm digging the notion of an eight character S E / 3 0 / G S C or some such on a rolling GS field of distinct rectangles per D I G I T A L logo might work? Let the endless fight begin!
Might could be, that'd be the counter setup I mentioned. I've never done any of the above either. It will be very interesting to see what the developers have to say.But in my uninformed mind a simple timer loop switching images every X milliseconds should do the trick haha.
Well, I thought about that, too (obviously), but there are certain limitations:Now if you feel like complicating it further, how about a animated boot splash? If it all possible to letās say display 5-20 different boot screens in quick succession, that could be really cool!
Let me know if you want any design/animation help. Iām a (was) a graphic designer by trade.
There's no intelligence on the board. Neither in your Mac... it sits in front of it.Great idea, but probably in the interesting notion category? Methinks such would require intelligence on the board. Splash seems to me to be a simple, binary on/off decision determined by machine state of the card?
In the current 8K ROM, there are 5k left for a logo.So curious now, especially about which ot the three sorcerers fields the question! I wonder if there's room in the ROM corner for a complex GS image?
Well, I thought about that, too (obviously), but there are certain limitations:
There are "the 3 commandments for a primaryInit":
In all cases, if you do not obey, you will burn in Windoze-Hell until the end of days .
- Thou shalt have no calls to ROM routines except for the Slot Manager
- Thy code length must be less than 16KB - but ideally it should be 2KB or less.
- Thy code execution time shalt be no longer than half of a mans blink (200ms)
Animation would mean:
You get the gist... time waste.
- draw an image
- wait a bit
- clear that image
- draw the next image
- wait a bit
- ....
Me too... That makes it a company [Following my rule of "Two's a company, three is a crowd"]
There's no intelligence on the board. Neither in your Mac... it sits in front of it.
Seriously, the intelligence is your 30's is the 68030 - he's doing all the fancy stuff the DeclROM asks him to do. And following the 3 commandments, he's pretty much on his own. No toolbox, no warm slippers, no nothing...
In the current 8K ROM, there are 5k left for a logo.
We're exploring the breathtaking world of a 16K ROM right now (needs a working additional adress-line on the unmodded formac card.
16kb of code
I thought that's what I was saying.There's no intelligence on the board. Neither in your Mac... it sits in front of it.
My Radius boards appear to splash the screen at startup whether the Mac successfully boots or not. That's why I said it would a two state system requiring no intelligence.Seriously, the intelligence is your 30's is the 68030 - he's doing all the fancy stuff the DeclROM asks him to do. And following the 3 commandments, he's pretty much on his own. No toolbox, no warm slippers, no nothing...
0 - Board On - Splashes Radius Logo in lower left corner - No Intelligence required - Logo is baseline frame buffer image from DeclROM
In other words, the fully grey screen we see just before the Happy Mac should be under control of the video driver, and is loaded after the PrimaryInit but before the SecondaryInit. This should mean the splash screen does not have to take into consideration the 3 commandments.
This would let the computer display messages during the startup process
This also isn't true. At least in the video declroms I've read, the initial framebuffer setup and filling with grey is done in primaryinit before the driver is loaded. I think the confusion is that
This doesn't mean splash screens. This means things like the happy mac/sad mac and the DSAT messages emitted by the early boot System.
My point was that this tells us the driver is loaded before the system messages, and as the driver does not have the constraints of the primaryinit, this would be a good place to run the code that would display a splash image
The problem here is that when someone tells you 'this piece of hardware does X', saying 'well, the book says it should do Y' is a statement of no actual implementation relevance at all, unless you're personally volunteering to make it do Y instead.
Listing 5-8 shows how to use PlotCIconHandle to draw an icon of resource type 'cicn' with a specific alignment and transform. Listing 5-8 uses GetCIcon to get a handle to the color icon record of the desired icon and then passes the destination rectangle, alignment, transform, and handle to PlotCIconHandle.
Listing 5-8 Drawing an icon of resource type 'cicn' with a specific alignment and transform
PROCEDURE MyPlotAcicnWithAlignAndTransform
(resID: Integer; destRect: Rect;
align: IconAlignmentType;
transform: IconTransformType;
VAR myCicnIcon: CIconHandle);
VAR
myErr: OSErr;
BEGIN
myCicnIcon := GetCIcon(resID);
myErr := PlotCIconHandle(destRect, align, transform,
myCicnIcon);
END;