Skip to content

Commit 019ee82

Browse files
authored
Merge pull request #2 from Zelllll/decompsupport
Fix issues with decomp export mode
2 parents 0cb31dc + c9fa350 commit 019ee82

2 files changed

Lines changed: 148 additions & 141 deletions

File tree

codepoints/oot_decomp_fn.txt

Lines changed: 140 additions & 140 deletions
Original file line numberDiff line numberDiff line change
@@ -1,140 +1,140 @@
1-
msg_char_20_space.i8.png
2-
msg_char_21_exclamation_mark.i8.png
3-
msg_char_22_quotation_mark.i8.png
4-
msg_char_23_number_sign.i8.png
5-
msg_char_24_dollar_sign.i8.png
6-
msg_char_25_percent_sign.i8.png
7-
msg_char_26_ampersand.i8.png
8-
msg_char_27_apostrophe.i8.png
9-
msg_char_28_left_parentheses.i8.png
10-
msg_char_29_right_parentheses.i8.png
11-
msg_char_2a_asterisk.i8.png
12-
msg_char_2b_plus_sign.i8.png
13-
msg_char_2c_comma.i8.png
14-
msg_char_2d_hyphen_minus.i8.png
15-
msg_char_2e_full_stop.i8.png
16-
msg_char_2f_solidus.i8.png
17-
msg_char_30_digit_0.i8.png
18-
msg_char_31_digit_1.i8.png
19-
msg_char_32_digit_2.i8.png
20-
msg_char_33_digit_3.i8.png
21-
msg_char_34_digit_4.i8.png
22-
msg_char_35_digit_5.i8.png
23-
msg_char_36_digit_6.i8.png
24-
msg_char_37_digit_7.i8.png
25-
msg_char_38_digit_8.i8.png
26-
msg_char_39_digit_9.i8.png
27-
msg_char_3a_colon.i8.png
28-
msg_char_3b_semicolon.i8.png
29-
msg_char_3c_less_than_sign.i8.png
30-
msg_char_3d_equals_sign.i8.png
31-
msg_char_3e_greater_than_sign.i8.png
32-
msg_char_3f_question_mark.i8.png
33-
msg_char_40_commercial_at.i8.png
34-
msg_char_41_latin_capital_letter_a.i8.png
35-
msg_char_42_latin_capital_letter_b.i8.png
36-
msg_char_43_latin_capital_letter_c.i8.png
37-
msg_char_44_latin_capital_letter_d.i8.png
38-
msg_char_45_latin_capital_letter_e.i8.png
39-
msg_char_46_latin_capital_letter_f.i8.png
40-
msg_char_47_latin_capital_letter_g.i8.png
41-
msg_char_48_latin_capital_letter_h.i8.png
42-
msg_char_49_latin_capital_letter_i.i8.png
43-
msg_char_4a_latin_capital_letter_j.i8.png
44-
msg_char_4b_latin_capital_letter_k.i8.png
45-
msg_char_4c_latin_capital_letter_l.i8.png
46-
msg_char_4d_latin_capital_letter_m.i8.png
47-
msg_char_4e_latin_capital_letter_n.i8.png
48-
msg_char_4f_latin_capital_letter_o.i8.png
49-
msg_char_50_latin_capital_letter_p.i8.png
50-
msg_char_51_latin_capital_letter_q.i8.png
51-
msg_char_52_latin_capital_letter_r.i8.png
52-
msg_char_53_latin_capital_letter_s.i8.png
53-
msg_char_54_latin_capital_letter_t.i8.png
54-
msg_char_55_latin_capital_letter_u.i8.png
55-
msg_char_56_latin_capital_letter_v.i8.png
56-
msg_char_57_latin_capital_letter_w.i8.png
57-
msg_char_58_latin_capital_letter_x.i8.png
58-
msg_char_59_latin_capital_letter_y.i8.png
59-
msg_char_5a_latin_capital_letter_z.i8.png
60-
msg_char_5b_left_square_bracket.i8.png
61-
msg_char_5c_yen_sign.i8.png
62-
msg_char_5d_right_square_bracket.i8.png
63-
msg_char_5e_circumflex_accent.i8.png
64-
msg_char_5f_low_line.i8.png
65-
msg_char_60_grave_accent.i8.png
66-
msg_char_61_latin_small_letter_a.i8.png
67-
msg_char_62_latin_small_letter_b.i8.png
68-
msg_char_63_latin_small_letter_c.i8.png
69-
msg_char_64_latin_small_letter_d.i8.png
70-
msg_char_65_latin_small_letter_e.i8.png
71-
msg_char_66_latin_small_letter_f.i8.png
72-
msg_char_67_latin_small_letter_g.i8.png
73-
msg_char_68_latin_small_letter_h.i8.png
74-
msg_char_69_latin_small_letter_i.i8.png
75-
msg_char_6a_latin_small_letter_j.i8.png
76-
msg_char_6b_latin_small_letter_k.i8.png
77-
msg_char_6c_latin_small_letter_l.i8.png
78-
msg_char_6d_latin_small_letter_m.i8.png
79-
msg_char_6e_latin_small_letter_n.i8.png
80-
msg_char_6f_latin_small_letter_o.i8.png
81-
msg_char_70_latin_small_letter_p.i8.png
82-
msg_char_71_latin_small_letter_q.i8.png
83-
msg_char_72_latin_small_letter_r.i8.png
84-
msg_char_73_latin_small_letter_s.i8.png
85-
msg_char_74_latin_small_letter_t.i8.png
86-
msg_char_75_latin_small_letter_u.i8.png
87-
msg_char_76_latin_small_letter_v.i8.png
88-
msg_char_77_latin_small_letter_w.i8.png
89-
msg_char_78_latin_small_letter_x.i8.png
90-
msg_char_79_latin_small_letter_y.i8.png
91-
msg_char_7a_latin_small_letter_z.i8.png
92-
msg_char_7b_left_curly_bracket.i8.png
93-
msg_char_7c_vertical_line.i8.png
94-
msg_char_7d_right_curly_bracket.i8.png
95-
msg_char_7e_tilde.i8.png
96-
msg_char_7f_blank.i8.png
97-
msg_char_80_latin_capital_letter_a_with_grave.i8.png
98-
msg_char_81_latin_capital_letter_i_with_circumflex.i8.png
99-
msg_char_82_latin_capital_letter_a_with_circumflex.i8.png
100-
msg_char_83_latin_capital_letter_a_with_diaeresis.i8.png
101-
msg_char_84_latin_capital_letter_c_with_cedilla.i8.png
102-
msg_char_85_latin_capital_letter_e_with_grave.i8.png
103-
msg_char_86_latin_capital_letter_e_with_acute.i8.png
104-
msg_char_87_latin_capital_letter_e_with_circumflex.i8.png
105-
msg_char_88_latin_capital_letter_e_with_diaeresis.i8.png
106-
msg_char_89_latin_capital_letter_i_with_diaeresis.i8.png
107-
msg_char_8a_latin_capital_letter_o_with_circumflex.i8.png
108-
msg_char_8b_latin_capital_letter_o_with_diaeresis.i8.png
109-
msg_char_8c_latin_capital_letter_u_with_grave.i8.png
110-
msg_char_8d_latin_capital_letter_u_with_circumflex.i8.png
111-
msg_char_8e_latin_capital_letter_u_with_diaeresis.i8.png
112-
msg_char_8f_latin_small_letter_sharp_s.i8.png
113-
msg_char_90_latin_small_letter_a_with_grave.i8.png
114-
msg_char_91_latin_small_letter_a_with_acute.i8.png
115-
msg_char_92_latin_small_letter_a_with_circumflex.i8.png
116-
msg_char_93_latin_small_letter_a_with_diaeresis.i8.png
117-
msg_char_94_latin_small_letter_c_with_cedilla.i8.png
118-
msg_char_95_latin_small_letter_e_with_grave.i8.png
119-
msg_char_96_latin_small_letter_e_with_acute.i8.png
120-
msg_char_97_latin_small_letter_e_with_circumflex.i8.png
121-
msg_char_98_latin_small_letter_e_with_diaeresis.i8.png
122-
msg_char_99_latin_small_letter_i_with_diaeresis.i8.png
123-
msg_char_9a_latin_small_letter_o_with_circumflex.i8.png
124-
msg_char_9b_latin_small_letter_o_with_diaeresis.i8.png
125-
msg_char_9c_latin_small_letter_u_with_grave.i8.png
126-
msg_char_9d_latin_small_letter_u_with_circumflex.i8.png
127-
msg_char_9e_latin_small_letter_u_with_diaeresis.i8.png
128-
msg_char_9f_button_a.i8.png
129-
msg_char_a0_button_b.i8.png
130-
msg_char_a1_button_c.i8.png
131-
msg_char_a2_button_l.i8.png
132-
msg_char_a3_button_r.i8.png
133-
msg_char_a4_button_z.i8.png
134-
msg_char_a5_button_c_up.i8.png
135-
msg_char_a6_button_c_down.i8.png
136-
msg_char_a7_button_c_left.i8.png
137-
msg_char_a8_button_c_right.i8.png
138-
msg_char_a9_z_target_sign.i8.png
139-
msg_char_aa_control_stick.i8.png
140-
msg_char_ab_control_pad.i8.png
1+
msg_char_20_space.i4.png
2+
msg_char_21_exclamation_mark.i4.png
3+
msg_char_22_quotation_mark.i4.png
4+
msg_char_23_number_sign.i4.png
5+
msg_char_24_dollar_sign.i4.png
6+
msg_char_25_percent_sign.i4.png
7+
msg_char_26_ampersand.i4.png
8+
msg_char_27_apostrophe.i4.png
9+
msg_char_28_left_parentheses.i4.png
10+
msg_char_29_right_parentheses.i4.png
11+
msg_char_2a_asterisk.i4.png
12+
msg_char_2b_plus_sign.i4.png
13+
msg_char_2c_comma.i4.png
14+
msg_char_2d_hyphen_minus.i4.png
15+
msg_char_2e_full_stop.i4.png
16+
msg_char_2f_solidus.i4.png
17+
msg_char_30_digit_0.i4.png
18+
msg_char_31_digit_1.i4.png
19+
msg_char_32_digit_2.i4.png
20+
msg_char_33_digit_3.i4.png
21+
msg_char_34_digit_4.i4.png
22+
msg_char_35_digit_5.i4.png
23+
msg_char_36_digit_6.i4.png
24+
msg_char_37_digit_7.i4.png
25+
msg_char_38_digit_8.i4.png
26+
msg_char_39_digit_9.i4.png
27+
msg_char_3a_colon.i4.png
28+
msg_char_3b_semicolon.i4.png
29+
msg_char_3c_less_than_sign.i4.png
30+
msg_char_3d_equals_sign.i4.png
31+
msg_char_3e_greater_than_sign.i4.png
32+
msg_char_3f_question_mark.i4.png
33+
msg_char_40_commercial_at.i4.png
34+
msg_char_41_latin_capital_letter_a.i4.png
35+
msg_char_42_latin_capital_letter_b.i4.png
36+
msg_char_43_latin_capital_letter_c.i4.png
37+
msg_char_44_latin_capital_letter_d.i4.png
38+
msg_char_45_latin_capital_letter_e.i4.png
39+
msg_char_46_latin_capital_letter_f.i4.png
40+
msg_char_47_latin_capital_letter_g.i4.png
41+
msg_char_48_latin_capital_letter_h.i4.png
42+
msg_char_49_latin_capital_letter_i.i4.png
43+
msg_char_4a_latin_capital_letter_j.i4.png
44+
msg_char_4b_latin_capital_letter_k.i4.png
45+
msg_char_4c_latin_capital_letter_l.i4.png
46+
msg_char_4d_latin_capital_letter_m.i4.png
47+
msg_char_4e_latin_capital_letter_n.i4.png
48+
msg_char_4f_latin_capital_letter_o.i4.png
49+
msg_char_50_latin_capital_letter_p.i4.png
50+
msg_char_51_latin_capital_letter_q.i4.png
51+
msg_char_52_latin_capital_letter_r.i4.png
52+
msg_char_53_latin_capital_letter_s.i4.png
53+
msg_char_54_latin_capital_letter_t.i4.png
54+
msg_char_55_latin_capital_letter_u.i4.png
55+
msg_char_56_latin_capital_letter_v.i4.png
56+
msg_char_57_latin_capital_letter_w.i4.png
57+
msg_char_58_latin_capital_letter_x.i4.png
58+
msg_char_59_latin_capital_letter_y.i4.png
59+
msg_char_5a_latin_capital_letter_z.i4.png
60+
msg_char_5b_left_square_bracket.i4.png
61+
msg_char_5c_yen_sign.i4.png
62+
msg_char_5d_right_square_bracket.i4.png
63+
msg_char_5e_circumflex_accent.i4.png
64+
msg_char_5f_low_line.i4.png
65+
msg_char_60_grave_accent.i4.png
66+
msg_char_61_latin_small_letter_a.i4.png
67+
msg_char_62_latin_small_letter_b.i4.png
68+
msg_char_63_latin_small_letter_c.i4.png
69+
msg_char_64_latin_small_letter_d.i4.png
70+
msg_char_65_latin_small_letter_e.i4.png
71+
msg_char_66_latin_small_letter_f.i4.png
72+
msg_char_67_latin_small_letter_g.i4.png
73+
msg_char_68_latin_small_letter_h.i4.png
74+
msg_char_69_latin_small_letter_i.i4.png
75+
msg_char_6a_latin_small_letter_j.i4.png
76+
msg_char_6b_latin_small_letter_k.i4.png
77+
msg_char_6c_latin_small_letter_l.i4.png
78+
msg_char_6d_latin_small_letter_m.i4.png
79+
msg_char_6e_latin_small_letter_n.i4.png
80+
msg_char_6f_latin_small_letter_o.i4.png
81+
msg_char_70_latin_small_letter_p.i4.png
82+
msg_char_71_latin_small_letter_q.i4.png
83+
msg_char_72_latin_small_letter_r.i4.png
84+
msg_char_73_latin_small_letter_s.i4.png
85+
msg_char_74_latin_small_letter_t.i4.png
86+
msg_char_75_latin_small_letter_u.i4.png
87+
msg_char_76_latin_small_letter_v.i4.png
88+
msg_char_77_latin_small_letter_w.i4.png
89+
msg_char_78_latin_small_letter_x.i4.png
90+
msg_char_79_latin_small_letter_y.i4.png
91+
msg_char_7a_latin_small_letter_z.i4.png
92+
msg_char_7b_left_curly_bracket.i4.png
93+
msg_char_7c_vertical_line.i4.png
94+
msg_char_7d_right_curly_bracket.i4.png
95+
msg_char_7e_tilde.i4.png
96+
msg_char_7f_blank.i4.png
97+
msg_char_80_latin_capital_letter_a_with_grave.i4.png
98+
msg_char_81_latin_capital_letter_i_with_circumflex.i4.png
99+
msg_char_82_latin_capital_letter_a_with_circumflex.i4.png
100+
msg_char_83_latin_capital_letter_a_with_diaeresis.i4.png
101+
msg_char_84_latin_capital_letter_c_with_cedilla.i4.png
102+
msg_char_85_latin_capital_letter_e_with_grave.i4.png
103+
msg_char_86_latin_capital_letter_e_with_acute.i4.png
104+
msg_char_87_latin_capital_letter_e_with_circumflex.i4.png
105+
msg_char_88_latin_capital_letter_e_with_diaeresis.i4.png
106+
msg_char_89_latin_capital_letter_i_with_diaeresis.i4.png
107+
msg_char_8a_latin_capital_letter_o_with_circumflex.i4.png
108+
msg_char_8b_latin_capital_letter_o_with_diaeresis.i4.png
109+
msg_char_8c_latin_capital_letter_u_with_grave.i4.png
110+
msg_char_8d_latin_capital_letter_u_with_circumflex.i4.png
111+
msg_char_8e_latin_capital_letter_u_with_diaeresis.i4.png
112+
msg_char_8f_latin_small_letter_sharp_s.i4.png
113+
msg_char_90_latin_small_letter_a_with_grave.i4.png
114+
msg_char_91_latin_small_letter_a_with_acute.i4.png
115+
msg_char_92_latin_small_letter_a_with_circumflex.i4.png
116+
msg_char_93_latin_small_letter_a_with_diaeresis.i4.png
117+
msg_char_94_latin_small_letter_c_with_cedilla.i4.png
118+
msg_char_95_latin_small_letter_e_with_grave.i4.png
119+
msg_char_96_latin_small_letter_e_with_acute.i4.png
120+
msg_char_97_latin_small_letter_e_with_circumflex.i4.png
121+
msg_char_98_latin_small_letter_e_with_diaeresis.i4.png
122+
msg_char_99_latin_small_letter_i_with_diaeresis.i4.png
123+
msg_char_9a_latin_small_letter_o_with_circumflex.i4.png
124+
msg_char_9b_latin_small_letter_o_with_diaeresis.i4.png
125+
msg_char_9c_latin_small_letter_u_with_grave.i4.png
126+
msg_char_9d_latin_small_letter_u_with_circumflex.i4.png
127+
msg_char_9e_latin_small_letter_u_with_diaeresis.i4.png
128+
msg_char_9f_button_a.i4.png
129+
msg_char_a0_button_b.i4.png
130+
msg_char_a1_button_c.i4.png
131+
msg_char_a2_button_l.i4.png
132+
msg_char_a3_button_r.i4.png
133+
msg_char_a4_button_z.i4.png
134+
msg_char_a5_button_c_up.i4.png
135+
msg_char_a6_button_c_down.i4.png
136+
msg_char_a7_button_c_left.i4.png
137+
msg_char_a8_button_c_right.i4.png
138+
msg_char_a9_z_target_sign.i4.png
139+
msg_char_aa_control_stick.i4.png
140+
msg_char_ab_control_pad.i4.png

src/z64font.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@ void z64font_exportDecomp(struct z64font *g, char **ofn)
176176
const char *delim = "\r\n";
177177
char *pngFn = 0;
178178
char *decompFileNames = strdup(g->decompFileNames);
179+
unsigned char rgbaBuf[FONT_W * FONT_H][4];
179180
const float extraWidthEntries[] = {
180181
14.0f, // '[A]'
181182
14.0f, // '[B]'
@@ -203,7 +204,13 @@ void z64font_exportDecomp(struct z64font *g, char **ofn)
203204

204205
for (zchar = g->zchar; zchar->bitmap; ++zchar)
205206
{
206-
stbi_write_png(pngFn, FONT_W, FONT_H, 1, zchar->bitmap, FONT_W * 1);
207+
/* convert i8 to rgba32 */
208+
for (int i = 0; i < FONT_W * FONT_H; ++i)
209+
{
210+
rgbaBuf[i][0] = rgbaBuf[i][1] = rgbaBuf[i][2] = ((unsigned char *)zchar->bitmap)[i]; /* rgb */
211+
rgbaBuf[i][3] = 255; /* a */
212+
}
213+
stbi_write_png(pngFn, FONT_W, FONT_H, 4, rgbaBuf, FONT_W * 4);
207214
pngFn = strtok(0, delim);
208215
}
209216

0 commit comments

Comments
 (0)