611 Commits

Author SHA1 Message Date
Wolfvak
50270a820c
Split up the ARM9 code and data sections (#883)
* Split up the ARM9 code (.text, .vectors) and data (.rodata, .data, .bss) sections into their own ELFs.

This allows us to use more ARM9 WRAM while leaving the 128k BootROM mirror intact.

* use the makefile definition

* Also dump section headers on .dis file
2025-03-15 14:25:23 +01:00
Wolfvak
143fcf0d6b Display hours in ETA if the remaining seconds is >= 3600 2025-03-12 17:12:02 +01:00
Pk11
8cde50e091
Automate translation files (#880)
* Automate language.inl file

* Move version number to JSON file

Better than being a magic number somewhere in the code, source code gets it from source.json

* Automate creation of .trf translation files
2024-11-30 08:24:15 -03:00
profi200
105f4ae5f7
Increased CTRCARD clock from 4.18 to 13.4 MHz on ROM reads. (#873) 2024-11-26 19:32:51 -03:00
ZeroSkill1
208f12bde7 Fix multi RedNAND 2x not being set up properly 2024-11-14 12:49:09 +01:00
Fra
eee63dd155
Fix fcram boot bug (#864)
Fixed old bug that appeared regarding the fcram boot failing.
2024-06-15 15:37:11 -03:00
Luís Marques
26990ca23a
Key 0x2C is different per platform (#842)
Change KeyY to generate same KeyNormal on dev
2024-03-17 11:27:27 -03:00
Pk11
338a2aa98a
Fix crashing in script runner mode (#840) 2024-02-20 15:13:57 -03:00
Luís Marques
399740b50e
Undefined behavior fix on ticket.c (#838)
Stack garbage is always a luck of the draw
This was causing issues on non-LTO build.
LTO was just lucky.
2024-01-25 11:28:03 +01:00
ihaveahax
ad8b5e0a8c
arm9/arm11 Makefile: Fix building with spaces in path (#828)
This quotes $(CURDIR) which fixes an issue with building GM9 in a path
with spaces, which Windows users are likely to have.
2023-08-25 21:58:22 -03:00
Wolfvak
14b390a943
Move the start of AHBWRAM to be immediately after the VECTORS (#827) 2023-08-23 10:51:35 -03:00
Wolfvak
031762a1fe
Embed the VRAM tar data in the ARM9 executable (#824)
* Embed the VRAM tar data in the ARM9 executable

* Fix Makefile dependency order

* Use address difference instead of absolute word for the VRAM drive limit
2023-07-24 10:17:37 -03:00
Danny Tsai
8b362c977a
Correct installable address whitelist (#816)
* Correct installable address whitelist

blacklist is stored at 0xb088~0xb0bf, which is ulong[14] in
{start(inclusive), end(exclusive)} pair.
one thing to note is that boot9 use inclusive comparing with
blacklist start for both section load address and
section load address + section size (comparing logic is
at 0xa42e~0xa449), so if the firm fits perfectly at the end
of the space right before the blacklisted range,
it'll also be rejected.

* shrink vram drive size to avoid bleeding into blacklisted range
2023-07-21 21:39:08 -03:00
Wolfvak
723529e2d8
Fix compilation warnings on dkA r60 (#808)
Mostly just switched out the bound strn* functions for their unbound variants when the string is a known constant
2023-04-25 10:13:28 -03:00
Pk11
5aaac66eef Use sizeof in snprintf where possible, ensure UTF_BUFFER_BYTESIZE
This commit looks a lot bigger than it really is, I noticed a couple spots where with these issues so I ran a regex to find all possible occurrences and switched all that could be, after manually ensuring it was actually correct

Using sizeof on the buffer (as long as the buffer is a char *array*, not a pointer!!) greatly reduces the chance of something having the wrong size because of a later change to the buffer, notably a couple snprintfs were missed in the UTF_BUFFER_BYTESIZE change
2023-04-15 12:54:02 +02:00
Pk11
439e06334b Add language selection on first load & from HOME 2023-04-15 12:54:02 +02:00
Pk11
8303440c19 Add loading translations from TRF
Reduce pointer magic use

Both translations and fonts
2023-04-15 12:54:02 +02:00
Pk11
93ee590cad Make strings translatable 2023-04-15 12:54:02 +02:00
Pk11
cae3d272d3
Only reserve space in trimmed NDS files for RSA key if it exists (#804) 2023-04-09 15:38:35 -03:00
ZeroSkill1
64414e12ab fix buffer overflow
This would cause exceptions when encrypting/decrypting CIA files to
`0:/gm9/out`.
2023-03-23 16:57:47 +01:00
d0k3
a23ba0e14b Fix a typo 2022-11-28 09:12:56 +01:00
d0k3
3710ed975b Enable compatibility with mGBA RTS savegames 2022-11-28 09:11:57 +01:00
Pk11
9416ec5ac0 Make select prompt scroll if too many options
Also a little cleanup to the file browse one for consistency
2022-10-24 14:35:04 +02:00
Myriachan
c9d792cb27 Add Brazil to SysInfo serial number recognition. 2022-09-27 16:59:57 +02:00
d0k3
096e6c3cb7 Add padding byte value to cart info file
Fixes #780
2022-07-22 21:43:23 +02:00
Gabriel Marcano
b11194397a
use sizeof with snprintf when target is an array (#778)
- GCC warned of a case when the size specified in a snprintf call was
   larger than the size of a target buffer. To fix, when possible use
   sizeof() to match buffer size.
2022-06-23 17:37:19 -03:00
aspargas2
658c9b491c use --use-blx linker argument
makes firm about 500 bytes smaller for free
2022-04-16 18:40:47 -04:00
d0k3
c13bba4cfe Fixed a boatload of compiler warnings 2022-03-22 19:40:47 +01:00
d0k3
d95a606ec2 Fix bad trimming of certain NDS dumps
Fixes #763
2022-03-08 18:47:32 +01:00
Pk11
586d30fafa Improve DSiWare save generation 2022-02-21 23:57:02 -06:00
aspargas2
682b570ef7 scripting: don't initialize dynamic env vars until they're needed
this should fix the long delay on loading any script
2022-01-12 11:33:04 -05:00
aspargas2
8d1557191f fix conflicting move/copy flags 2022-01-08 19:07:53 -05:00
aspargas2
cb11db6f1b fix crashes when showing certain error messages 2021-12-02 18:33:53 -05:00
aspargas2
1554aac4e1 fix hexeditor instructions formatting 2021-12-02 14:22:13 -05:00
aspargas2
fdbca10773 add format attribute to printf-like functions 2021-12-01 17:07:46 -05:00
d0k3
1b8bd121b6 Added raw cart dumper (R+A on cart drive) 2021-11-14 22:14:59 +01:00
d0k3
ba10ce96c3 Scripting: added cartdump command 2021-11-14 22:14:59 +01:00
d0k3
25bf8b3f93 Added installer for cifinish.bin files 2021-11-14 22:14:59 +01:00
Pk11
1ffbca7d46 Allow loading FRF fonts up to 0x20000 bytes 2021-11-14 22:14:59 +01:00
Pk11
942e67e507 Add Unicode hex input 2021-11-14 22:14:58 +01:00
Pk11
830479f50c Fix multibyte letters in keyboard and input prompt 2021-11-14 22:14:58 +01:00
Pk11
0275a85121 Convert old escapes to Unicode
Only does the ones below ASCII (0x00 - 0x1F), hopefully none of the high ones are important because they'll conflict with Unicode codepoints
2021-11-14 22:14:58 +01:00
Pk11
3eb92754bc Use lookup table for ASCII to avoid binary search 2021-11-14 22:14:58 +01:00
Pk11
77fc7af2f2 Use macro for UTF-8 byte count
Makes it more clear why all of the buffers are being multiplied by 4

Fix UTF-8 bytesize macro

Before UTF_BUFFER_BYTESIZE(str_width - 10)] would multiply the 10, not the whole number, by UTF_MAX_BYTES_PER_RUNE

Do (rune_count + 1) * 4 in UTF-8 bytesize macro

Fix Resize/Truncate String snprintf size

Before it would break if the last character was multi-byte
2021-11-14 22:14:53 +01:00
Pk11
b366200d4b Switch to a RIFF font format
Fix height of ラ character

I accidentally made it 1px too tall before

Add Cyrillic to default font

Make Я more like latin R

Right after I commit, looking at my screenshot I notice I forgot to tweak the Я to be more angled like this font's latin R...

Improve the default font's Kana

derp fix

Properly handle invalid UTF-8

Fix conversion PBMs with non-byte aligned rows

Rename font extension to .frf

For Font RiFf

Re-add PBM font support

Default converting to CP-437 and try guess size

Revert "Default converting to CP-437 and try guess size"

Reverts 2c9a47d224b28cbb51a3ee335fd9970265201b72 as I think the old behaviour works better given PBM font support being kept

Re-add mapping file for CP-437

Automatically use mapping file with same name as image

ex. for "font_6x10.pbm" it will use "font_6x10.txt" in the same directory
2021-11-14 22:13:55 +01:00
Pk11
13eb4f8869 Proper handling of UTF-8
Note: This commit may be slightly broken, I'm just splitting up it and the next one at the end.
2021-11-14 22:13:32 +01:00
TimmSkiller
55385a5502
Fixed inability to install a larger/smaller ticket when a smaller/large one is installed (#733)
* Fixed inability to install a larger ticket when a smaller one is installed

* improved AddBDRIEntry checks, formatting and added define for REPLACE_SIZE_MISMATCH
2021-10-23 13:19:13 +02:00
TimmSkiller
0dbe70928f
fix #729 - building titlekeys.bin files
* fix #729

* Improved code layout & show NAND type when building support files
2021-10-23 13:14:53 +02:00
aspargas2
7feeb51a65 split SHA-1 evenly over two lines (like SHA-256) 2021-10-21 18:22:07 -04:00
d0k3
c966acc851 Display SHA-1 over two lines (like SHA-256) 2021-10-09 11:58:47 +02:00