No description
Find a file
hc c0072489f2 refactor: Pre-decode font glyphs to surfaces at load time
Font loading now decodes RLE-compressed glyphs to hal_surface_t
at load time rather than decoding per-character during rendering.
This simplifies draw_text() implementations across all backends
and enables use of hal_blit() with colorkey for transparency.

Changes:
- hal_font_common.h:
  - hal_glyph_t (ydisp/rle_data) replaced with hal_surface_t glyphs[]
  - Added glyph_width[] array for per-glyph widths
  - Added glyph_to_surface() to decode glyph bitmap at load time
  - Added hal_font_draw_char() that uses hal_blit() with colorkey
  - Removed hal_font_decode_row() (no longer needed)

- dos13h/hal_video.c:
  - Added hal_video_set_cursor_position() and hal_video_show_cursor()
  - hal_draw_text() now uses hal_font_draw_char() helper
  - Draws 8x8 white cursor when cursor_visible

- allegro4/hal_video.c, dosmodex/hal_video.c, sdl3/hal_video.c:
  - Added hal_font_load(), hal_font_destroy(), hal_draw_text()
    implementations using new common helpers

- sdl2/hal_video.c:
  - hal_draw_text() now uses hal_font_draw_char() helper

- hal_pcx_common.h:
  - Added support for uncompressed PCX (encoding == 0)
  - Fixed RLE decoder to properly skip padding bytes when
    bytes_per_line > width, preventing file position drift
2026-04-02 22:16:03 -04:00
audio fix(audio/video): rework SDL2/SDL3 audio to drop SDL_mixer, fix DOS video backends 2026-04-01 00:05:20 -04:00
debug fix(hal): resolve all pending P1 issues and newly found bugs 2026-03-26 16:53:04 -04:00
docs feat: Add font loading and text drawing to HAL 2026-04-02 17:25:33 -04:00
file fix(dos): hal_file_dos.c supports Watcom DOS4GW flat mode 2026-03-27 21:56:20 -04:00
input Fix SDL2 video/input backend for new hal_video_init API 2026-04-01 02:47:09 -04:00
net initial 2026-03-26 11:06:37 -04:00
samples fix: sample_font - add missing hal_input_init() call 2026-04-02 17:37:03 -04:00
script fix(hal): resolve all pending P1 issues and newly found bugs 2026-03-26 16:53:04 -04:00
timer updated to have a dos sample, bug fixes 2026-03-27 15:51:47 -04:00
todos fix(hal): resolve all pending P1 issues and newly found bugs 2026-03-26 16:53:04 -04:00
video refactor: Pre-decode font glyphs to surfaces at load time 2026-04-02 22:16:03 -04:00
.gitignore fix(video/dos13h): prevent memset overflow when rect clips off screen 2026-03-27 15:46:50 -04:00
Doxyfile docs: add Doxyfile for HAL API documentation 2026-03-29 17:09:45 -04:00
hal.c Fix DOS backend canvas clipping: enforce full vp_x/vp_y lower bounds 2026-04-01 13:16:45 -04:00
hal.h feat: Add font loading and text drawing to HAL 2026-04-02 17:25:33 -04:00
hal_types.h feat: Add font loading and text drawing to HAL 2026-04-02 17:25:33 -04:00
Makefile feat: Add font loading and text drawing to HAL 2026-04-02 17:25:33 -04:00
test_mod.c test: add MOD and SDL2 audio test programs with test.mod sample 2026-04-01 00:06:45 -04:00
test_sdl2_audio.c test: add MOD and SDL2 audio test programs with test.mod sample 2026-04-01 00:06:45 -04:00