chaoskagami [Tue, 7 Jun 2016 21:08:09 +0000 (17:08 -0400)]
Multiple changes (again)
* Fix up patches. Specify rel in all of them for sanity purposes
* Fix up some misc shit in the interpreter and add OP_N3DS (to check if N3DS, obviously)
* Fix a bunch of bugs in the assembler.
* Hide n3ds-only options on o3ds
* Stability
chaoskagami [Mon, 6 Jun 2016 08:00:02 +0000 (04:00 -0400)]
Multiple things (again)
* EmuNAND support (only one right now, but all I need is a menu/option for more)
* This is both normal layout (RedNAND) and gateway layout (header at back)
* Loader now has three different rel options for text, data, and ro
* Screeninit.
chaoskagami [Sun, 5 Jun 2016 07:10:41 +0000 (03:10 -0400)]
Multiple things (again)
* Replace all instances of 'service' with 'svc' or 'svc call' to get my terminology straight
* Make logging in loader toggleable, add boot logging, and add an option to the menu. Hopefully this will cut down on improper issue reporting.
chaoskagami [Sun, 5 Jun 2016 04:53:56 +0000 (00:53 -0400)]
Multiple bits here:
* service -> svc because I'm a dumbass
* Added a few new opcodes: OP_OR, OP_XOR, OP_NOT, OP_VER
* I'd make a joke about stability here, but meh.
chaoskagami [Fri, 3 Jun 2016 07:47:10 +0000 (03:47 -0400)]
Changes, changes, it keeps getting fix'd up
* Updated fatfs/sdmmc code to the version in GodMode9's repo, sans NAND writes.
* Fixed the damned cache issue, courtesy of GodMode9's directory removal function.
* Added a cache for the menu itself to speed along autoboot.
root [Thu, 2 Jun 2016 18:20:47 +0000 (14:20 -0400)]
Loader now uses externalized patches.
Aside from a few ones that involve complicated steps, of course.
It's STILL smaller than Nintendo's loader, incidentally!
(A few things need tweaking - namely, it is very slow to boot.
I expect I need some kind of patch cache generated prior to boot.
I also need to turn off the altmenu patch.)
chaoskagami [Thu, 2 Jun 2016 08:12:38 +0000 (04:12 -0400)]
Misc stuff.
* More work prepping for bytecode.
* Improve decidedly shitty putc buffer to just directly render. Old behavior kept around via -DBUFFER=1.
* I need to reimplement scrollback still
chaoskagami [Sat, 28 May 2016 02:25:45 +0000 (22:25 -0400)]
Multiple changes:
- Menus now reference config #defines, so config entries can be out of order in file
- Anti-anti-downgrade fix courtesy of Luma3DS (Thanks, @TuxSH!)
chaoskagami [Mon, 23 May 2016 17:56:57 +0000 (13:56 -0400)]
Experimental shite.
The kernel doesn't get passed CPU flags from the functions called here.
Assuming the kernel doesn't seek backwards from the exheader pointer,
the CPU state should already have been set by AM, which means loader
can override what was previously set.
That being the case, if I am correct, setting the CPU speed from
loader should technically persist to application launch. This needs
testing, obviously, but I believe granular CPU speed control is
possible from here.
chaoskagami [Mon, 23 May 2016 06:07:25 +0000 (02:07 -0400)]
Multiple changes
- Update loader to latest ctrulib (FS_Archive changed quite a bit, broke API and ABI, ugh)
- Clean up some patch handling code for future
chaoskagami [Thu, 19 May 2016 19:26:23 +0000 (15:26 -0400)]
Many changes here.
- Make services assembled from .s files in external/services
- Arbitrary service loading now, including a NULL safety toggle
- Drop armips for clever gnu as usage
- Loader can (theoretically) resize segments now, so one step closer
to building a romfs overlay into loader
- Split function for patches into text, data, ro patches
- Stub IFile_Write - Hopefully I implement it soon, I'd like logging.
- Other misc changes. I forget whether this was the previous commit,
but I added @TuxSH's RO patch.