Commit Graph

47 Commits

Author SHA1 Message Date
Philippe Symons
b84939b49a Add debug menu UI when you press L+R in the main menu.
It's only the UI yet. It only shows a couple of dummy options right now.
2026-03-09 19:56:32 +01:00
The Gears of Progress
ba1a075701 Adding PCCS 2025-10-12 15:08:33 -04:00
The Gears of Progress
a0793c72c0 Fixing issues before implementing the CPCS 2025-09-20 17:17:20 -04:00
easyaspi314
750641c78f Prepare for trouble... and make it.... fixed point?
To protect the world from the soft float library...
To unite all arithmetic within our binary...
To denounce the evils of floating point precision...
To save more kilobytes - that's our vision....

(god this is cringe)

All floating point math has been eliminated, and replaced with
equivalent or near-equivalent fixed-point math.

sprite_data.cpp uses Q16, and get_rand_range uses a full Q32 to
ensure that the exact same results are generated as before, at
the cost of some inline assembly to do a umull (__aeabi_lmul is a
little excessive when the lower 32 bits are discarded)

This eliminates all of the expensive double precision float library,
saving a few kilobytes.

Additionally, the unneccessary parts of nanoprintf have been
disabled. There is no need for precision specifiers, long longs, or
floats.
2025-06-30 13:05:32 -04:00
Philippe Symons
5750abba2c Merge remote-tracking branch 'upstream/text-and-box-rewrite' into optimizations/implement-zx0-compression
Conflicts:
	source/payload_builder.cpp
2025-06-18 21:07:11 +02:00
The Gears of Progress
48b55d9b9c Adding sprite locations for all English games 2025-06-06 15:30:26 -04:00
The Gears of Progress
42815f166f Starting to add sprite compatibility 2025-05-27 16:48:04 -04:00
Philippe Symons
6d60fb8901 Merge branch 'optimizations/reduce-binarysize-remove-libstdc++' into optimizations/implement-zx0-compression 2025-05-25 22:34:45 +02:00
The Gears of Progress
dd0dc20837 Fixing sprite corruption and adding game pak sprite debug toggle 2025-05-25 13:00:07 -04:00
Philippe Symons
532a095d77 Implement zx0 compression
Compress data tables with the ZX0 compression algorithm
2025-04-24 21:14:48 +02:00
The Gears of Progress
08f6838c91 Fixing some graphics tearing 2025-04-08 14:28:30 -04:00
The Gears of Progress
c7aa7b3dca Modifying the remote multiboot loader 2025-04-06 17:09:52 -04:00
The Gears of Progress
a278bfb355 Updating Dream Dex 2025-04-06 11:57:37 -04:00
The Gears of Progress
1ee46e1719 Resolving build warnings 2025-03-30 11:56:32 -04:00
The Gears of Progress
b267912687 Continuing box updating 2025-03-27 14:37:47 -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
easyaspi314
e4ef25e20e Compress the graphics (mostly), fix potential vram memcpy issue
This greatly decreases the ROM size, from 245 KB to 198 KB with no visual
changes (that I am aware of)

Changes:
- Enable compression on every graphic but the Pokemon sprites (which are
  too large for the GBA to decompress).
- Change grit from emitting .s files to .c files so GCC can strip unused
  palettes and maps
- Fix the empty tiles
- Trim down the font to skip 00-1F and 80-FF which were all zeroes
  - needs a slight workaround because the Pokemon name display was printing
    an invisible FF byte
- Switch memcpy to tonccpy which is vram safe
- Limit palette sizes.

Signed-off-by: easyaspi314 <6258309+easyaspi314@users.noreply.github.com>
2025-01-17 19:32:48 -05:00
The Gears of Progress
a805bbad0a Releasing wood gecko 2025-01-11 17:23:09 -05:00
Pyrochrome
fcf5371cea modified: source/sprite_data.cpp 2024-12-03 20:19:59 -05:00
The Gears of Progress
3b945ecf3e v1.1.0 2024-11-01 22:54:05 -04:00
The Gears of Progress
884ebc9216 Adding data packets to GSC 2024-10-31 10:59:36 -04:00
The Gears of Progress
e3c5898683 Fixing contest hall data bug 2024-09-25 14:51:20 -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
290fdf22a4 Updating DreamDex 2024-06-28 16:24:01 -04:00
The Gears of Progress
e0f78a3195 Finalizing beta v2 2024-05-29 13:11:44 -05:00
The Gears of Progress
bf7f7f401c Continuing Payload Work 2024-05-02 12:18:24 -05:00
Remnants of Forgotten Disney
a4bda4c673 Adding in event stabilization 2024-04-17 09:17:15 -05:00
Remnants of Forgotten Disney
301ccf602b Finalizing Red/Blue Payload 2024-04-07 16:46:39 -05:00
Remnants of Forgotten Disney
a27f1c2c37 Continuing transfer menu implementation 2024-04-02 12:19:06 -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
1b5f30087a Modifying Pokemon Injection 2024-02-19 08:29:37 -06:00
Remnants of Forgotten Disney
0cca5a82ad Default Language Selection 2023-10-26 12:19:24 -05:00
Remnants of Forgotten Disney
18b9815327 Beginning langauge selection menu and char arrays 2023-10-23 22:25:09 -05:00
Remnants of Forgotten Disney
91268c2b35 Beginning work on Professor 2023-10-16 21:25:49 -05:00
Remnants of Forgotten Disney
e31afcbae3 Font importing 2023-08-25 00:28:09 -05:00
Remnants of Forgotten Disney
68cdc3c121 Pokedex interface 2023-08-23 12:50:55 -05:00
Starport75
ce71b400da Working menu! 2023-08-11 15:39:52 -05:00
Starport75
0db001a730 Working on main menu 2023-08-10 17:16:07 -05:00
Starport75
647d3565f4 Continuing graphics work 2023-08-09 17:05:51 -05:00