Skip to content

Commit

Permalink
Merge pull request #2 from Zelllll/decompsupport
Browse files Browse the repository at this point in the history
Fix issues with decomp export mode
  • Loading branch information
z64me authored Feb 27, 2022
2 parents 0cb31dc + c9fa350 commit 019ee82
Show file tree
Hide file tree
Showing 2 changed files with 148 additions and 141 deletions.
280 changes: 140 additions & 140 deletions codepoints/oot_decomp_fn.txt
Original file line number Diff line number Diff line change
@@ -1,140 +1,140 @@
msg_char_20_space.i8.png
msg_char_21_exclamation_mark.i8.png
msg_char_22_quotation_mark.i8.png
msg_char_23_number_sign.i8.png
msg_char_24_dollar_sign.i8.png
msg_char_25_percent_sign.i8.png
msg_char_26_ampersand.i8.png
msg_char_27_apostrophe.i8.png
msg_char_28_left_parentheses.i8.png
msg_char_29_right_parentheses.i8.png
msg_char_2a_asterisk.i8.png
msg_char_2b_plus_sign.i8.png
msg_char_2c_comma.i8.png
msg_char_2d_hyphen_minus.i8.png
msg_char_2e_full_stop.i8.png
msg_char_2f_solidus.i8.png
msg_char_30_digit_0.i8.png
msg_char_31_digit_1.i8.png
msg_char_32_digit_2.i8.png
msg_char_33_digit_3.i8.png
msg_char_34_digit_4.i8.png
msg_char_35_digit_5.i8.png
msg_char_36_digit_6.i8.png
msg_char_37_digit_7.i8.png
msg_char_38_digit_8.i8.png
msg_char_39_digit_9.i8.png
msg_char_3a_colon.i8.png
msg_char_3b_semicolon.i8.png
msg_char_3c_less_than_sign.i8.png
msg_char_3d_equals_sign.i8.png
msg_char_3e_greater_than_sign.i8.png
msg_char_3f_question_mark.i8.png
msg_char_40_commercial_at.i8.png
msg_char_41_latin_capital_letter_a.i8.png
msg_char_42_latin_capital_letter_b.i8.png
msg_char_43_latin_capital_letter_c.i8.png
msg_char_44_latin_capital_letter_d.i8.png
msg_char_45_latin_capital_letter_e.i8.png
msg_char_46_latin_capital_letter_f.i8.png
msg_char_47_latin_capital_letter_g.i8.png
msg_char_48_latin_capital_letter_h.i8.png
msg_char_49_latin_capital_letter_i.i8.png
msg_char_4a_latin_capital_letter_j.i8.png
msg_char_4b_latin_capital_letter_k.i8.png
msg_char_4c_latin_capital_letter_l.i8.png
msg_char_4d_latin_capital_letter_m.i8.png
msg_char_4e_latin_capital_letter_n.i8.png
msg_char_4f_latin_capital_letter_o.i8.png
msg_char_50_latin_capital_letter_p.i8.png
msg_char_51_latin_capital_letter_q.i8.png
msg_char_52_latin_capital_letter_r.i8.png
msg_char_53_latin_capital_letter_s.i8.png
msg_char_54_latin_capital_letter_t.i8.png
msg_char_55_latin_capital_letter_u.i8.png
msg_char_56_latin_capital_letter_v.i8.png
msg_char_57_latin_capital_letter_w.i8.png
msg_char_58_latin_capital_letter_x.i8.png
msg_char_59_latin_capital_letter_y.i8.png
msg_char_5a_latin_capital_letter_z.i8.png
msg_char_5b_left_square_bracket.i8.png
msg_char_5c_yen_sign.i8.png
msg_char_5d_right_square_bracket.i8.png
msg_char_5e_circumflex_accent.i8.png
msg_char_5f_low_line.i8.png
msg_char_60_grave_accent.i8.png
msg_char_61_latin_small_letter_a.i8.png
msg_char_62_latin_small_letter_b.i8.png
msg_char_63_latin_small_letter_c.i8.png
msg_char_64_latin_small_letter_d.i8.png
msg_char_65_latin_small_letter_e.i8.png
msg_char_66_latin_small_letter_f.i8.png
msg_char_67_latin_small_letter_g.i8.png
msg_char_68_latin_small_letter_h.i8.png
msg_char_69_latin_small_letter_i.i8.png
msg_char_6a_latin_small_letter_j.i8.png
msg_char_6b_latin_small_letter_k.i8.png
msg_char_6c_latin_small_letter_l.i8.png
msg_char_6d_latin_small_letter_m.i8.png
msg_char_6e_latin_small_letter_n.i8.png
msg_char_6f_latin_small_letter_o.i8.png
msg_char_70_latin_small_letter_p.i8.png
msg_char_71_latin_small_letter_q.i8.png
msg_char_72_latin_small_letter_r.i8.png
msg_char_73_latin_small_letter_s.i8.png
msg_char_74_latin_small_letter_t.i8.png
msg_char_75_latin_small_letter_u.i8.png
msg_char_76_latin_small_letter_v.i8.png
msg_char_77_latin_small_letter_w.i8.png
msg_char_78_latin_small_letter_x.i8.png
msg_char_79_latin_small_letter_y.i8.png
msg_char_7a_latin_small_letter_z.i8.png
msg_char_7b_left_curly_bracket.i8.png
msg_char_7c_vertical_line.i8.png
msg_char_7d_right_curly_bracket.i8.png
msg_char_7e_tilde.i8.png
msg_char_7f_blank.i8.png
msg_char_80_latin_capital_letter_a_with_grave.i8.png
msg_char_81_latin_capital_letter_i_with_circumflex.i8.png
msg_char_82_latin_capital_letter_a_with_circumflex.i8.png
msg_char_83_latin_capital_letter_a_with_diaeresis.i8.png
msg_char_84_latin_capital_letter_c_with_cedilla.i8.png
msg_char_85_latin_capital_letter_e_with_grave.i8.png
msg_char_86_latin_capital_letter_e_with_acute.i8.png
msg_char_87_latin_capital_letter_e_with_circumflex.i8.png
msg_char_88_latin_capital_letter_e_with_diaeresis.i8.png
msg_char_89_latin_capital_letter_i_with_diaeresis.i8.png
msg_char_8a_latin_capital_letter_o_with_circumflex.i8.png
msg_char_8b_latin_capital_letter_o_with_diaeresis.i8.png
msg_char_8c_latin_capital_letter_u_with_grave.i8.png
msg_char_8d_latin_capital_letter_u_with_circumflex.i8.png
msg_char_8e_latin_capital_letter_u_with_diaeresis.i8.png
msg_char_8f_latin_small_letter_sharp_s.i8.png
msg_char_90_latin_small_letter_a_with_grave.i8.png
msg_char_91_latin_small_letter_a_with_acute.i8.png
msg_char_92_latin_small_letter_a_with_circumflex.i8.png
msg_char_93_latin_small_letter_a_with_diaeresis.i8.png
msg_char_94_latin_small_letter_c_with_cedilla.i8.png
msg_char_95_latin_small_letter_e_with_grave.i8.png
msg_char_96_latin_small_letter_e_with_acute.i8.png
msg_char_97_latin_small_letter_e_with_circumflex.i8.png
msg_char_98_latin_small_letter_e_with_diaeresis.i8.png
msg_char_99_latin_small_letter_i_with_diaeresis.i8.png
msg_char_9a_latin_small_letter_o_with_circumflex.i8.png
msg_char_9b_latin_small_letter_o_with_diaeresis.i8.png
msg_char_9c_latin_small_letter_u_with_grave.i8.png
msg_char_9d_latin_small_letter_u_with_circumflex.i8.png
msg_char_9e_latin_small_letter_u_with_diaeresis.i8.png
msg_char_9f_button_a.i8.png
msg_char_a0_button_b.i8.png
msg_char_a1_button_c.i8.png
msg_char_a2_button_l.i8.png
msg_char_a3_button_r.i8.png
msg_char_a4_button_z.i8.png
msg_char_a5_button_c_up.i8.png
msg_char_a6_button_c_down.i8.png
msg_char_a7_button_c_left.i8.png
msg_char_a8_button_c_right.i8.png
msg_char_a9_z_target_sign.i8.png
msg_char_aa_control_stick.i8.png
msg_char_ab_control_pad.i8.png
msg_char_20_space.i4.png
msg_char_21_exclamation_mark.i4.png
msg_char_22_quotation_mark.i4.png
msg_char_23_number_sign.i4.png
msg_char_24_dollar_sign.i4.png
msg_char_25_percent_sign.i4.png
msg_char_26_ampersand.i4.png
msg_char_27_apostrophe.i4.png
msg_char_28_left_parentheses.i4.png
msg_char_29_right_parentheses.i4.png
msg_char_2a_asterisk.i4.png
msg_char_2b_plus_sign.i4.png
msg_char_2c_comma.i4.png
msg_char_2d_hyphen_minus.i4.png
msg_char_2e_full_stop.i4.png
msg_char_2f_solidus.i4.png
msg_char_30_digit_0.i4.png
msg_char_31_digit_1.i4.png
msg_char_32_digit_2.i4.png
msg_char_33_digit_3.i4.png
msg_char_34_digit_4.i4.png
msg_char_35_digit_5.i4.png
msg_char_36_digit_6.i4.png
msg_char_37_digit_7.i4.png
msg_char_38_digit_8.i4.png
msg_char_39_digit_9.i4.png
msg_char_3a_colon.i4.png
msg_char_3b_semicolon.i4.png
msg_char_3c_less_than_sign.i4.png
msg_char_3d_equals_sign.i4.png
msg_char_3e_greater_than_sign.i4.png
msg_char_3f_question_mark.i4.png
msg_char_40_commercial_at.i4.png
msg_char_41_latin_capital_letter_a.i4.png
msg_char_42_latin_capital_letter_b.i4.png
msg_char_43_latin_capital_letter_c.i4.png
msg_char_44_latin_capital_letter_d.i4.png
msg_char_45_latin_capital_letter_e.i4.png
msg_char_46_latin_capital_letter_f.i4.png
msg_char_47_latin_capital_letter_g.i4.png
msg_char_48_latin_capital_letter_h.i4.png
msg_char_49_latin_capital_letter_i.i4.png
msg_char_4a_latin_capital_letter_j.i4.png
msg_char_4b_latin_capital_letter_k.i4.png
msg_char_4c_latin_capital_letter_l.i4.png
msg_char_4d_latin_capital_letter_m.i4.png
msg_char_4e_latin_capital_letter_n.i4.png
msg_char_4f_latin_capital_letter_o.i4.png
msg_char_50_latin_capital_letter_p.i4.png
msg_char_51_latin_capital_letter_q.i4.png
msg_char_52_latin_capital_letter_r.i4.png
msg_char_53_latin_capital_letter_s.i4.png
msg_char_54_latin_capital_letter_t.i4.png
msg_char_55_latin_capital_letter_u.i4.png
msg_char_56_latin_capital_letter_v.i4.png
msg_char_57_latin_capital_letter_w.i4.png
msg_char_58_latin_capital_letter_x.i4.png
msg_char_59_latin_capital_letter_y.i4.png
msg_char_5a_latin_capital_letter_z.i4.png
msg_char_5b_left_square_bracket.i4.png
msg_char_5c_yen_sign.i4.png
msg_char_5d_right_square_bracket.i4.png
msg_char_5e_circumflex_accent.i4.png
msg_char_5f_low_line.i4.png
msg_char_60_grave_accent.i4.png
msg_char_61_latin_small_letter_a.i4.png
msg_char_62_latin_small_letter_b.i4.png
msg_char_63_latin_small_letter_c.i4.png
msg_char_64_latin_small_letter_d.i4.png
msg_char_65_latin_small_letter_e.i4.png
msg_char_66_latin_small_letter_f.i4.png
msg_char_67_latin_small_letter_g.i4.png
msg_char_68_latin_small_letter_h.i4.png
msg_char_69_latin_small_letter_i.i4.png
msg_char_6a_latin_small_letter_j.i4.png
msg_char_6b_latin_small_letter_k.i4.png
msg_char_6c_latin_small_letter_l.i4.png
msg_char_6d_latin_small_letter_m.i4.png
msg_char_6e_latin_small_letter_n.i4.png
msg_char_6f_latin_small_letter_o.i4.png
msg_char_70_latin_small_letter_p.i4.png
msg_char_71_latin_small_letter_q.i4.png
msg_char_72_latin_small_letter_r.i4.png
msg_char_73_latin_small_letter_s.i4.png
msg_char_74_latin_small_letter_t.i4.png
msg_char_75_latin_small_letter_u.i4.png
msg_char_76_latin_small_letter_v.i4.png
msg_char_77_latin_small_letter_w.i4.png
msg_char_78_latin_small_letter_x.i4.png
msg_char_79_latin_small_letter_y.i4.png
msg_char_7a_latin_small_letter_z.i4.png
msg_char_7b_left_curly_bracket.i4.png
msg_char_7c_vertical_line.i4.png
msg_char_7d_right_curly_bracket.i4.png
msg_char_7e_tilde.i4.png
msg_char_7f_blank.i4.png
msg_char_80_latin_capital_letter_a_with_grave.i4.png
msg_char_81_latin_capital_letter_i_with_circumflex.i4.png
msg_char_82_latin_capital_letter_a_with_circumflex.i4.png
msg_char_83_latin_capital_letter_a_with_diaeresis.i4.png
msg_char_84_latin_capital_letter_c_with_cedilla.i4.png
msg_char_85_latin_capital_letter_e_with_grave.i4.png
msg_char_86_latin_capital_letter_e_with_acute.i4.png
msg_char_87_latin_capital_letter_e_with_circumflex.i4.png
msg_char_88_latin_capital_letter_e_with_diaeresis.i4.png
msg_char_89_latin_capital_letter_i_with_diaeresis.i4.png
msg_char_8a_latin_capital_letter_o_with_circumflex.i4.png
msg_char_8b_latin_capital_letter_o_with_diaeresis.i4.png
msg_char_8c_latin_capital_letter_u_with_grave.i4.png
msg_char_8d_latin_capital_letter_u_with_circumflex.i4.png
msg_char_8e_latin_capital_letter_u_with_diaeresis.i4.png
msg_char_8f_latin_small_letter_sharp_s.i4.png
msg_char_90_latin_small_letter_a_with_grave.i4.png
msg_char_91_latin_small_letter_a_with_acute.i4.png
msg_char_92_latin_small_letter_a_with_circumflex.i4.png
msg_char_93_latin_small_letter_a_with_diaeresis.i4.png
msg_char_94_latin_small_letter_c_with_cedilla.i4.png
msg_char_95_latin_small_letter_e_with_grave.i4.png
msg_char_96_latin_small_letter_e_with_acute.i4.png
msg_char_97_latin_small_letter_e_with_circumflex.i4.png
msg_char_98_latin_small_letter_e_with_diaeresis.i4.png
msg_char_99_latin_small_letter_i_with_diaeresis.i4.png
msg_char_9a_latin_small_letter_o_with_circumflex.i4.png
msg_char_9b_latin_small_letter_o_with_diaeresis.i4.png
msg_char_9c_latin_small_letter_u_with_grave.i4.png
msg_char_9d_latin_small_letter_u_with_circumflex.i4.png
msg_char_9e_latin_small_letter_u_with_diaeresis.i4.png
msg_char_9f_button_a.i4.png
msg_char_a0_button_b.i4.png
msg_char_a1_button_c.i4.png
msg_char_a2_button_l.i4.png
msg_char_a3_button_r.i4.png
msg_char_a4_button_z.i4.png
msg_char_a5_button_c_up.i4.png
msg_char_a6_button_c_down.i4.png
msg_char_a7_button_c_left.i4.png
msg_char_a8_button_c_right.i4.png
msg_char_a9_z_target_sign.i4.png
msg_char_aa_control_stick.i4.png
msg_char_ab_control_pad.i4.png
9 changes: 8 additions & 1 deletion src/z64font.c
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,7 @@ void z64font_exportDecomp(struct z64font *g, char **ofn)
const char *delim = "\r\n";
char *pngFn = 0;
char *decompFileNames = strdup(g->decompFileNames);
unsigned char rgbaBuf[FONT_W * FONT_H][4];
const float extraWidthEntries[] = {
14.0f, // '[A]'
14.0f, // '[B]'
Expand Down Expand Up @@ -203,7 +204,13 @@ void z64font_exportDecomp(struct z64font *g, char **ofn)

for (zchar = g->zchar; zchar->bitmap; ++zchar)
{
stbi_write_png(pngFn, FONT_W, FONT_H, 1, zchar->bitmap, FONT_W * 1);
/* convert i8 to rgba32 */
for (int i = 0; i < FONT_W * FONT_H; ++i)
{
rgbaBuf[i][0] = rgbaBuf[i][1] = rgbaBuf[i][2] = ((unsigned char *)zchar->bitmap)[i]; /* rgb */
rgbaBuf[i][3] = 255; /* a */
}
stbi_write_png(pngFn, FONT_W, FONT_H, 4, rgbaBuf, FONT_W * 4);
pngFn = strtok(0, delim);
}

Expand Down

0 comments on commit 019ee82

Please sign in to comment.