Commit Graph

180 Commits

Author SHA1 Message Date
Martin Griffin e38dfaa92c preproc: Parse cpp linemarkers
The line numbers in preproc's errors involving strings or INCBINs were
incorrect before this change because all the lines from '#include'd
files incremented the line number that would be reported.
2026-05-15 15:45:17 +01:00
Martin Griffin 2f46a89b15 Merge pull request #2283 from mrgriffin/pret-incgfx
INCGFX: in-source arguments for gbagfx
2026-04-19 09:28:43 +01:00
Martin Griffin df02d49e9b INCGFX: in-source arguments for gbagfx
'INCGFX' is like 'INCBIN' except that it specifies the arguments to pass
to 'gbagfx' which alleviates the user-unfriendliness caused by catch-all
rules.

Specifically, users frequently forget to add to 'spritesheet_rules.mk'
when adding object event graphics, and then the built '.4bpp' file is
not invalidated when the add their rule so they have to 'touch' the
source file or similar.

The built artifacts are placed in 'build/assets'.
2026-04-19 07:06:17 +01:00
Martin Griffin 84e8d23425 Remove INCBIN_S*
The signed INCBINs are unused, I assume they were once for audio data
but that is handled in assembly now.
2026-04-19 07:06:17 +01:00
Marcus Huderle 962442a51e Implement remaining MEMACC commands (#2281)
* Implement remaining MEMACC commands

* Remove unnecessary memacc cases
2026-04-08 18:53:33 -05:00
Marcus Huderle 163c8a4321 Add --set-agbl option to wav2agb 2025-12-28 08:50:34 -06:00
Marcus Huderle 8d1f3ccd6a Update .wav samples to use 'agbl' chunk to accomodate for vanilla's off-by-one behavior 2025-12-27 10:33:04 -06:00
GriffinR 4297a5ea81 Clean up wav2agb's Makefile 2025-12-03 21:19:47 -05:00
Marcus Huderle d507b24ae9 Convert .aif files to .wav (#2213)
* Convert uncompress samples to .wav files, and introduce wav2agb with matching capabilities

Convert cries

Remove aif2pcm and cleanup wav2agb

* Add --no-pad option to support hq mixer

* Update wav2agb README

* Include the alignment padding in wav2agb

* cleanup
2025-12-01 09:01:26 -06:00
FosterProgramming 8b8c593bf6 Fix preproc not correctly reading skipped lines symbols inside enum (#2197) 2025-11-05 09:04:30 +00:00
Martin Griffin d1d5435487 Improve undefined map assembler messages (#2196) 2025-10-29 21:34:03 -04:00
Josh 0dfec24967 Allow names for voicegroups and use a macro for use with drumsets (#2149)
mid2agb has been modified to allow more than just numbers when naming voicegroups and voicegroups have been renamed to match. A "voice_group" macro has been set up with a optional parameter for the starting note will shift the offset by the specified amount * 0xC which is the length of 1 voice in a voicegroup. All drumset voicegroups have a "starting_note" of 36.
2025-07-30 19:43:08 +01:00
GriffinR 20012cba6e Merge pull request #2130 from Catnip-Consumer/preproc-windows-fixes
Apply fixes to preproc for Windows compatibility
2025-07-21 18:56:37 -04:00
Philipp AUER e63e89e270 Fix potential stack memory leak in gbagfx due to out of bounds read (#2162)
* fix(tools): gbagfx potential oob read

---------

Co-authored-by: sbird <sbird@no.tld>
2025-07-21 18:33:44 +01:00
GriffinR 929bc8b990 Merge branch 'master' of https://github.com/pret/pokeemerald into porymap-6 2025-05-14 11:50:11 -04:00
Martin Griffin 484c41c49d Remove files that should not have been committed 2025-05-13 14:56:31 +01:00
Alex 2044bea883 Rename battlerId to battler for consistency (#2126) 2025-05-09 12:43:23 +01:00
Hedara c8d3a6b4df Added missing include due to g++ changes 2025-05-02 16:03:55 +02:00
Catnip-Consumer 2cc013ff3e Apply fixes to preproc for Windows compatibility 2025-04-28 14:36:19 +03:00
GriffinR cdadd7d2ed Generate heal location constants automatically, move data back to a single file. 2025-02-03 20:25:11 -05:00
GriffinR 0eb6d1d74c Merge branch 'porymap-6' of https://github.com/pret/pokeemerald into generate-map-constants 2024-10-15 22:04:45 -04:00
GriffinR da9c0239d9 Merge branch 'master' of https://github.com/pret/pokeemerald into porymap-6 2024-10-15 22:02:40 -04:00
luckytyphlosion a55c75d350 Get rid of common syms (#2040) 2024-10-14 23:52:11 -04:00
GriffinR a2a3255bdd Fix typo, remove old size check 2024-10-12 03:30:35 -04:00
GriffinR 9f31b0fe90 Generate local IDs from map.json files 2024-10-12 03:04:24 -04:00
GriffinR 6518f1e3ff Merge branch 'master' of https://github.com/pret/pokeemerald into porymap-6 2024-10-11 15:26:58 -04:00
GriffinR 091b7269df Move heal locations data to their associated map.json (#2034) 2024-10-11 15:15:55 -04:00
GriffinR b6892f5b67 Let scaninc ignore empty C files 2024-10-11 15:03:38 -04:00
mid-kid 2c7964dbc2 Fix deleting files with dependency files (#2045) 2024-10-11 14:33:32 -04:00
Martin Griffin fcc067e515 [preproc] support C23 enum underlying type syntax (#2043) 2024-10-11 13:50:26 -04:00
GriffinR 8f41d9eb17 Merge branch 'master' into fix-toolchain 2024-09-19 12:20:51 -04:00
Kurausukun 52c2728ff6 remove gflib 2024-09-18 10:37:34 -04:00
GriffinR 302193a814 Have scaninc ignore non-existing files 2024-09-14 00:28:57 -04:00
GriffinR b8c71fa84d Fix .d files not updating if .o fails, fix clean rule, remove some unnecessary warnings 2024-09-13 23:38:50 -04:00
GriffinR d9b824db3f Sync missing alignment from pokefirered 2024-09-12 12:27:31 -04:00
GriffinR 2d5231149e Merge branch 'master' of https://github.com/pret/pokeemerald into build-scaninc-speed 2024-08-31 00:39:48 -04:00
Icedude907 625a006cab [Build System Rewrite] mapjson now takes output directory parameters. (#1949) 2024-08-29 14:01:01 -04:00
Martin Griffin 5c55cc3748 [preproc] support arbitrary expressions in enums 2024-08-21 07:50:41 +01:00
Philipp AUER 550e6688aa Support C-Style enum in preproc (#1984)
* [preproc] C-style enums

- asm files parseable from stdin
- 2nd preproc pass
- add parser for C-style `enum`
- positional arguments at end of command

---------

Co-authored-by: sbird <sbird@no.tld>
Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
2024-07-13 18:26:33 +01:00
Alex Nash c0d630ee63 Add support for LF line endings to gbagfx 2024-06-20 21:44:32 +02:00
GriffinR 232eab4bee Merge pull request #1975 from Sierraffinity/jsonproc-fix
jsonproc: filter out every non-alphanumeric character
2024-01-28 13:54:11 -05:00
Sierraffinity b98e044ce9 jsonproc: filter out every non-alphanumeric character 2024-01-27 19:29:29 -08:00
Sierraffinity e85750bb55 gbagfx bit depth upconversion fix 2024-01-27 14:29:31 -08:00
Icedude907 4b2054c3ea Parallel SCANINC via .d generation.
Secondary expansion is redundant.
2023-11-12 16:38:32 +13:00
Icedude907 7fa9819d9a Makefile uses make_tools, mapjson takes out dir.
Removed generated files (layouts.h, map_groups.h) from git.
2023-11-12 00:53:34 +13:00
kittenchilly 333523e5f7 Remove all leading whitespace 2023-10-23 13:24:38 -05:00
grunt-lucas 9d170c7e35 gbagfx to respect user CC setting 2023-08-22 07:37:48 -07:00
GriffinR 6fdf75bd8c Support plain pixel conversion, convert spinda spots to .png 2023-05-11 13:41:38 -04:00
GriffinR 8e5347b450 Fix mapjson misreporting errors when processing map_groups.json 2023-04-30 23:29:31 -04:00
GriffinR be84793713 Let scaninc/preproc ignore empty asm files 2023-02-27 12:47:35 -05:00