Skip to content

Commit f3f40a1

Browse files
committed
Updated 1.4.1
1 parent ab5456d commit f3f40a1

29 files changed

Lines changed: 875 additions & 640 deletions

ASCII.tbl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
2A=*
1212
2B=+
1313
2C=,
14-
3D=-
14+
2D=-
1515
2E=.
1616
2F=/
1717
30=0
@@ -91,4 +91,4 @@
9191
7A=z
9292
7B={
9393
7C=|
94-
7D=}
94+
7D=}

README.txt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
NOMBRE: HEXSTRING
44
AUTOR: KODA
5-
LATEST VERSION: 1.4.0
5+
LATEST VERSION: 1.4.1
66
URL: HTTPS://TRADUCCIONESKODA.BLOGSPOT.COM/
77
HTTPS://GITHUB.COM/KODINGBTW/HEXSTRING
8-
LAST UPDATE: 08/07/2024
8+
LAST UPDATE: 26/09/2025
99

1010
------------------------------------------------------
1111
1 - WHAT'S THIS?
@@ -21,6 +21,14 @@ FOCUS ON TRANSLATING.
2121
------------------------------------------------------
2222
2 - WHAT'S NEW
2323
------------------------------------------------------
24+
V1.4.1
25+
FIXED:
26+
- FIXED NEGATIVE BASE FORMATTING
27+
- FIXED SOME ERROR NOT RESER STATUS BAR
28+
29+
NEW FEATURES:
30+
- ADDED INSERTCONFIG COMMAND, NOW ITS POSSIBLE TO
31+
USE GUI .JSON CONFIG TO CREATE FAST INSERT SCRIPTS.
2432
V1.4.0
2533

2634
DELETED:

cli_commands.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ General Commands:
1818

1919
extract Extract script from ROM
2020
insert Insert script into ROM
21+
insertconfig <path> Insert script with .json config from GUI
2122
version Show program version
2223

2324
--rom <path> Path to the ROM file
@@ -57,7 +58,6 @@ If you want to add advanced options, always do it at the end.
5758

5859
--fill <hex_value> Fill value in hex (optional, Default: 0xFF)
5960
--use-split-pointers <lsb> <msb> <size> Three hexadecimal numbers for split pointers(optional)
60-
--ignore-end-lines Ignore end lines (optional)
6161
--no-use-end-lines <hex_value> Do not use end lines (optional)
6262

6363
NOTE: Some advanced options may cause general-purpose instructions to be omitted, for example, if --use-split-pointers is used.
@@ -83,6 +83,6 @@ GAME: Star Fox 2 (USA).sfc
8383
CR32: 87653732
8484

8585
For extract:
86-
console.exe extract --rom <romName> --p 2b --pointers-offset 0x2EB3 --pointers-size 0x1ae --base -8000 --end-line 00 --out <outFile> --tbl <tblFile> --ignore-end-lines
86+
console.exe extract --rom <romName> --p 2b --pointers-offset 0x2EB3 --pointers-size 0x1ae --base -8000 --end-line 00 --out <outFile> --tbl <tblFile> --no-use-end-lines 2EB2
8787
For insert:
8888
console.exe insert --file <inputScript> --p 2b --text-offset 0x1168 --text-size 0x1d4b --pointers-offset 0x2EB3 --base -8000 --rom <romName> --tbl <tblFile> --no-use-end-lines 2EB2

requirements.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ cycler==0.12.1
1515
decorator==5.2.1
1616
defusedxml==0.7.1
1717
docopt==0.6.2
18+
et_xmlfile==2.0.0
1819
executing==2.2.0
1920
fastjsonschema==2.21.1
2021
fonttools==4.49.0
@@ -37,6 +38,7 @@ nbclient==0.10.2
3738
nbconvert==7.16.6
3839
nbformat==5.10.4
3940
numpy==1.26.4
41+
openpyxl==3.1.5
4042
packaging==23.2
4143
pandas==2.2.1
4244
pandocfilters==1.5.1
@@ -45,7 +47,7 @@ parso==0.8.4
4547
pefile==2023.2.7
4648
pickleshare==0.7.5
4749
pillow==10.2.0
48-
pipreqs==0.4.12
50+
pipreqs==0.4.10
4951
platformdirs==4.3.7
5052
prompt_toolkit==3.0.51
5153
pure_eval==0.2.3
Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
{
2-
"app_name": "HexString",
3-
"version": "1.4.0",
42
"rom_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Chip 'n Dale Rescue Rangers (USA).nes",
53
"tbl_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Chip 'n Dale Rescue Rangers (USA).tbl",
64
"script_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Chip 'n Dale Rescue Rangers (USA)_script.bin",
@@ -15,15 +13,10 @@
1513
"split_ptr_msb_offset": "955A",
1614
"split_ptr_size": "14",
1715
"no_use_comments_lines": false,
16+
"use_custom_brackets": false,
1817
"brackets": 0,
1918
"fill_free_space": false,
2019
"use_split_pointers": true,
21-
"not_use_end_line": true,
22-
"use_compression_method": false,
23-
"compression_algorithm": 0,
24-
"compression_variant": 0,
25-
"compare_to_dictionary": 0,
26-
"search_combinations": false,
27-
"max_frecuencies": "99",
28-
"max_char_lenght": "2"
20+
"ignore_end_line": false,
21+
"not_use_end_line": true
2922
}
Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
{
2-
"app_name": "HexString",
3-
"version": "1.4.0",
42
"rom_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Final Fantasy (USA).nes",
53
"tbl_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Final Fantasy (USA).tbl",
64
"script_file": "C:/Users/RODRIGO/Desktop/ToolsRomHack/HexString/Final Fantasy (USA)_script.bin",
@@ -14,15 +12,10 @@
1412
"end_line": "00",
1513
"fill_free_space_byte": "00",
1614
"no_use_comments_lines": false,
15+
"use_custom_brackets": false,
1716
"brackets": 0,
1817
"fill_free_space": true,
1918
"use_split_pointers": false,
20-
"not_use_end_line": false,
21-
"use_compression_method": false,
22-
"compression_algorithm": 0,
23-
"compression_variant": 0,
24-
"compare_to_dictionary": 0,
25-
"search_combinations": true,
26-
"max_frecuencies": "99",
27-
"max_char_lenght": "2"
19+
"ignore_end_line": false,
20+
"not_use_end_line": false
2821
}

src/app.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@ def process_extraction(self, out_file):
213213
if text_start_offset > text_end_offset:
214214
self.show_error_dialog("Text start offset can't be higher than text end offset.")
215215
print("Error: Extraction aborted!")
216+
self.main_window.progress_bar.setValue(0)
216217
return
217218
text_size = text_end_offset - text_start_offset + 1
218219
base = int(self.main_window.pointers_base_input.text(), 16)
@@ -568,12 +569,12 @@ def process_insertion(self, rom_file):
568569
return
569570

570571
if not self.main_window.use_split_pointers_checkbox.isChecked():
571-
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_start_offset, original_pointers_size, new_pointers_data, fill_free_space, fill_free_space_byte)
572+
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_start_offset, original_pointers_size, new_pointers_data, False, fill_free_space_byte)
572573
print(f"Pointer table write to address {hex(original_pointers_start_offset)}, {free_space_pointers//pointers_length} lines/pointers left.")
573574

574575
else:
575-
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_start_offset, original_pointers_size, new_pointers_data_lsb, fill_free_space, fill_free_space_byte)
576-
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_end_offset, original_pointers_size, new_pointers_data_msb, fill_free_space, fill_free_space_byte)
576+
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_start_offset, original_pointers_size, new_pointers_data_lsb, False, fill_free_space_byte)
577+
free_space_pointers = Encoder.write_rom(rom_file, original_pointers_end_offset, original_pointers_size, new_pointers_data_msb, False, fill_free_space_byte)
577578
print(f"Pointer table write to address {hex(original_pointers_start_offset)}, {free_space_pointers//2} lines/pointers left.")
578579

579580
self.main_window.progress_bar.setValue(100)

0 commit comments

Comments
 (0)