somehow i can play space cadet pinball with one hand better than i can play it with two? lol
Conversation
Notices
-
Embed this notice
Rairii (rairii@haqueers.com)'s status on Friday, 05-Jan-2024 18:07:20 JST Rairii - Roy Tam likes this.
-
Embed this notice
Rairii (rairii@haqueers.com)'s status on Friday, 05-Jan-2024 18:09:01 JST Rairii @manawyrm the ARC firmware API isn't that large, only about 30 functions or so
...the biggest problem is everything it has to do to get NT running in big endian mode. (the memory controller of Flipper derivatives is big endian only, so MSR[LE] is useless on Gekko derivatives that use Flipper derivatives, which basically means all of them in practise)
first, it implements an exception handler to emulate a few instructions, namely all 16/32-bit loads and stores;
it patches osloader when loading it, then hooks functions in it to patch everything it loads; so it can then patch the kernel to ensure everything works and hook various kernel functions to patch all PEs on load...
I need to refactor the last one, because every process currently gets its own copy of every DLL .text section, so memory runs out pretty fast...
Roy Tam likes this. -
Embed this notice
Manawyrm | Sarah (manawyrm@chaos.social)'s status on Friday, 05-Jan-2024 18:09:02 JST Manawyrm | Sarah @Rairii oh that's nice... the performance is pretty impressive as well :)
... what sort of primitives did you need to implement in the ARC to get this to work?
I still have a cursed PowerPC platform here, which might be a fun porting target...