Baddaboo/ClassicKit

Add a blue screen of death!

WickedLynx opened this issue ยท 12 comments

Add a blue screen of death!

Hmm, when would a BSOD make sense? Windows had a range of dialogs, from questions, errors, and critical errors to a flat BSOD (when something really bad happened). Or it could just be call attached to NotificationCenter

It should be a view controller that's shown on top of the whole app, which hides the status bar even.

I imagine it should be like the UIAlertController - you instantiate it and then present it.

Probably create it it in do {} catch { ... } blocks for try calls.

Yes, exactly what @avioli said! A view controller which 'hijacks' the app hiding navigation and the status bar and displays a configurable message.

For catching errors I believe bluescreen of death is proper solution. ๐Ÿ‘

So I wasn't sure what would trigger a BSOD in the browser, so I added one triggered by shaking the device. Check it out and let me know what you think! Once again, I still need to track down the exact font and behavior for a proper BSOD in Windows 95, but this should be fairly accurate

The font is fixedsys, and I am attaching it here. Not sure how it would look, as that font is meant to appear in 80ร—25 text mode. But give it a go.
fixedsys.ttf.zip

An idea is to have a BSOD manager as the uncaught exception handler ๐Ÿ˜‚ and then, instead of crashing, run the runloop ad infinitum so it remains on screen.

Uncought exceptions are a bad idea to catch in a general way. These are better off left alone to crash the app. Some of the nastiest could even burn up the CPU. Kernel panic or BSOD is fine on system level, since it locks up the CPU for good, but this is a simulated nostalgia thing. Most crash loggers just log it and rethrow (abort) the app, to let it crash.

Running the runloop does not run or โ€œburnโ€ the CPU. Do you know what a runloop is?

BTW, this is how it looks like with fixedsys.
ef595983-434a-4d08-b86b-f78d865bca87

@LeoNatan Thanks! I just pushed the font and adjusted the text for it. I think it looks great

@Baddaboo This is PERFECT!!!! Awesome work :)