3 ms·
I've always taken this approach. Before I wrote KSCrash [1], I didn't have a CLUE how crash managers worked. In fact, here's my first implementation of a crash
by kstenerud 7y ago
I've always taken this approach. Before I wrote KSCrash [1], I didn't have a CLUE how crash managers worked. In fact, here's my first implementation of a crash handler [2], which did EVERYTHING wrong. I ended up innovating a number of things that were thought impossible at the time, but are commonplace today (such as tapping into the Mach error handlers).
It was the same for the Musashi 68000 emulator [3]. Before I wrote this, I had no experience with emulation other than playing one of the Pac Man emulators in the 90s, and yet the first iteration outperformed the x86 assembler core in Mame by 15%, and thus replaced it in the next version.
6 months ago, I didn't have a CLUE how ieee754 floating point worked. Now I've developed a floating point compression algorithm [4], which is being used in Concise Binary Encoding [5], also something I've never tried before.
You absolutely should try diving into things before you know what you're getting into. Even if it doesn't turn out the way you wanted, you're in for one hell of a ride, and what you'll learn is priceless.
[1] https://github.com/kstenerud/KSCrash https://github.com/kstenerud/KSCrash
[2] https://github.com/kstenerud/Crash-Manager https://github.com/kstenerud/Crash-Manager
[3] https://github.com/kstenerud/musashi/ https://github.com/kstenerud/musashi/
[4] https://github.com/kstenerud/compact-float https://github.com/kstenerud/compact-float
[5] https://github.com/kstenerud/concise-binary-encoding https://github.com/kstenerud/concise-binary-encoding