Commit Graph

108 Commits

Author SHA1 Message Date
Philippe Symons
c755615d65 Merge branch 'master' into optimizations/reduce-binarysize-remove-libstdc++ 2025-04-09 20:19:39 +02:00
Philippe Symons
9268cbd42e Reduce binary size by eliminating libstdc++
This commit removes all references to things in the libstdc++ library to remove a decent chunk of bloat.

This means every std::to_string() call, std::string and std::vector. (as well as iostream related stuff).

I replaced those with my own versions ptgb::to_string() and ptgb::vector. Especially the latter is not exactly the same,
but close enough.

I also replaced operator new and delete with my own implementation to avoid pulling in everything related to exceptions
from libstdc++

Another problem was the fact that libtonc uses siscanf, which pulls in everything related to the scanf family of functions
and locale support. The worst part of that was that it included a 13KB "categories" symbol from libc_a-categories.o,
which was pulled in because of the locale support integrated into newlibc's siscanf() function. To fix that, I created a
custom, extremely restricted implementation of siscanf. libtonc only used this function to parse at most 2 integers from a
string anyway.
2025-04-09 20:04:08 +02:00
The Gears of Progress
08f6838c91 Fixing some graphics tearing 2025-04-08 14:28:30 -04:00
The Gears of Progress
7338828331 Removing graphics from loader 2025-04-06 17:29:22 -04:00
The Gears of Progress
c7aa7b3dca Modifying the remote multiboot loader 2025-04-06 17:09:52 -04:00
The Gears of Progress
a369e08093
Merge branch 'master' into feature/upload-rom-as-multiboot-to-other-gba 2025-04-06 12:37:47 -04:00
The Gears of Progress
a278bfb355 Updating Dream Dex 2025-04-06 11:57:37 -04:00
Philippe Symons
93a6c0f3fe Add functionality to upload Poke Transporter GB to another gba after it has started on the current one [EZ Flash Omega]
The reason for this functionality is that some flashcarts *cough* EZ Flash Omega (DE) *cough* can't be hotswapped IN. When you try this, they will trigger a reset of the gba.
This is only relevant for the use case in which you first launch the rom from a flashcart in the first place.

I suppose this can only be relevant for flashcarts which offer "single cart mode". (mode B for EZ Flash Omega).

So, I added an option to upload the rom to another GBA from the "game_load_error" screen if you press the SELECT button.

So, with this change, you could

- launch Poke Transporter GB on GBA 1 from a flashcart.
- eject the flashcart on GBA 1
- make sure the EZ Flash Omega or other "single cart mode/mode B" capable flashcart is set to this mode.
- insert this flashcart into GBA 2
- connect GBA link cable (narrow plug on GBA 1, wide plug on GBA 2)
- Power on GBA 2 and press both SELECT and START while the gameboy logo is still shown
- On GBA 1, in the "game_load_error" screen, press SELECT
- On GBA 1, now press A -> The multiboot upload will now start
- Once finished, GBA 2 will now be running Poke Transporter GB as well
- GBA 2 will recognize the gen III save!
- You can now disconnect the GBA link cable and turn off GBA 1. (you may use it later for the GBC game alongside a GBC link cable to start the actual PKMN transfer)
2025-04-03 23:31:24 +02:00
The Gears of Progress
1ee46e1719 Resolving build warnings 2025-03-30 11:56:32 -04:00
The Gears of Progress
8160bcd276 updating box menu, pre sprite grabbing 2025-03-22 15:57:22 -04:00
The Gears of Progress
91b2534b70 Updating text rendering 2025-03-19 20:55:09 -04:00
The Gears of Progress
af21da42b5 continuing work on updated text engine 2025-03-04 11:33:02 -05:00
The Gears of Progress
9f2dc4f653 Add a separate file for dialogue 2025-01-26 17:46:26 -05:00
The Gears of Progress
f4f64d0e07 Fixing button palette and modifying credits 2025-01-26 14:43:55 -05:00
The Gears of Progress
a805bbad0a Releasing wood gecko 2025-01-11 17:23:09 -05:00
The Gears of Progress
9d3221ae8d Adding more debug features 2024-09-25 20:49:10 -04:00
The Gears of Progress
3728db9f72 Final push!! 2024-08-23 17:50:17 -04:00
The Gears of Progress
73fd2342e9 Last push before release (probably not actually though lol) 2024-08-20 23:31:07 -04:00
The Gears of Progress
1ec09842ad Updating tons of graphics 2024-08-19 14:47:29 -04:00
The Gears of Progress
22f7aaac26 Pre-saving space 2024-08-13 15:49:04 -04:00
The Gears of Progress
b7f056ce79 Updating Dex Graphics 2024-08-08 16:07:43 -04:00
The Gears of Progress
a5ed8b5bda Prep for Z80-ASM 2024-07-26 12:13:39 -04:00
The Gears of Progress
aa4d2573b8 Fixing bugs 2024-07-11 11:18:38 -04:00
The Gears of Progress
add977cf02 Prep for bug testing 2024-07-03 17:44:33 -04:00
The Gears of Progress
e5ad1e25cf Changing background and fixing bugs 2024-07-02 16:55:47 -04:00
The Gears of Progress
8f07b1ebdb Re-enabling the old event 2024-07-01 16:45:54 -04:00
The Gears of Progress
290fdf22a4 Updating DreamDex 2024-06-28 16:24:01 -04:00
The Gears of Progress
2cfec76b3c Adding support for Yellow and fixing other bugs 2024-06-07 13:55:01 -04:00
The Gears of Progress
e0f78a3195 Finalizing beta v2 2024-05-29 13:11:44 -05:00
Remnants of Forgotten Disney
5cb282c8a7 Implementing Yellow and Gold/Silver Payloads 2024-04-29 08:29:09 -05:00
Remnants of Forgotten Disney
a4bda4c673 Adding in event stabilization 2024-04-17 09:17:15 -05:00
Remnants of Forgotten Disney
13450924c2 Implementing new payload system 2024-03-29 23:39:58 -05:00
Remnants of Forgotten Disney
0a27d23ba5 Updating buttons and implementing offset rows 2024-03-29 19:33:10 -05:00
Remnants of Forgotten Disney
0b041caf75 Implementing new sprites and temp sprite loading 2024-03-29 13:20:10 -05:00
Remnants of Forgotten Disney
de40daa51e Updating buttons and dialogue 2024-03-29 11:55:54 -05:00
Remnants of Forgotten Disney
6bef2b58f2 Reworking global frames 2024-03-27 12:04:18 -05:00
Remnants of Forgotten Disney
d7d8648eb4 Finalizing the RB transfer rewrite 2024-03-27 11:20:54 -05:00
Remnants of Forgotten Disney
0d39923c0a Fixing interrupts 2024-03-20 15:38:33 -05:00
Remnants of Forgotten Disney
53e7748d48 Organizing files 2024-03-19 13:52:23 -05:00
Remnants of Forgotten Disney
020d27433d Preparing for ASM rewrite 2024-02-24 14:53:12 -06:00
Remnants of Forgotten Disney
1b5f30087a Modifying Pokemon Injection 2024-02-19 08:29:37 -06:00
Remnants of Forgotten Disney
7401c2063a Pre-sprite handler 2024-02-12 17:25:41 -06:00
Remnants of Forgotten Disney
584c7862c3 Updating Link Cable Implementation 2024-02-12 13:28:06 -06:00
Remnants of Forgotten Disney
df1df7ea7f Pre-link rewrite 2024-02-04 12:35:54 -06:00
Remnants of Forgotten Disney
de3be068d7 Final commit before release 2023-12-04 21:03:14 -06:00
Remnants of Forgotten Disney
3784db8344 Finishing touches 2023-12-04 15:36:47 -06:00
Remnants of Forgotten Disney
1ee5b57036 Fixed save data 2023-12-03 16:00:03 -06:00
Remnants of Forgotten Disney
eb87ab3c03 Inital implementation of Save.C 2023-12-03 14:22:04 -06:00
Remnants of Forgotten Disney
8b3771b0d7 Pre-Save issue fixing 2023-12-02 21:10:51 -06:00
Remnants of Forgotten Disney
8bb76ca58c Double checking formatting 2023-11-29 08:28:55 -06:00