let's show Sparky4 what I mean by vertical column font rendering.
this code should demonstrate what I mean about minimizing our writes to
the map mask register and using arithmetic to step from byte to byte.
at least in DOSBox-X, the characters appear much faster now.
new file: 16.exe
new file: bakapi.exe
deleted: data/spri/ED.PAL
deleted: data/spri/PTMP.PAL
deleted: data/spri/PTMP1.PAL
new file: data/spri/ptmp.sht
new file: data/spri/ptmp.vrs
new file: exmmtest.exe
new file: fmemtest.exe
new file: fontgfx.exe
new file: fonttest.exe
new file: inputest.exe
deleted: makefile
new file: maptest.exe
new file: palettec.exe
new file: palettel.exe
new file: pcx2vrl
new file: pcxsscut
new file: pcxtest.exe
new file: pcxtest2.exe
new file: planrpcx.exe
new file: ptmp.h
new file: ptmps.h
new file: scroll.exe
deleted: spri.bat
new file: spri.sh
modified: src/inputest.c
modified: src/lib/16_in.c
new file: test.exe
new file: test2.exe
new file: tesuto.exe
new file: vgmtest.exe
new file: vrl2vrs
new file: vrsdump
new file: 16.exe
new file: bakapi.exe
deleted: data/spri/ED.PAL
deleted: data/spri/PTMP1.PAL
new file: data/spri/ptmp.sht
new file: data/spri/ptmp.vrs
new file: exmmtest.exe
new file: fmemtest.exe
new file: fontgfx.exe
new file: fonttest.exe
new file: inputest.exe
modified: makefile
new file: maptest.exe
new file: palettec.exe
new file: palettel.exe
new file: pcx2vrl
new file: pcxsscut
new file: pcxtest.exe
new file: pcxtest2.exe
new file: planrpcx.exe
new file: ptmp.h
new file: ptmps.h
new file: scroll.exe
deleted: spri.bat
new file: spri.sh
new file: test.exe
new file: test2.exe
new file: tesuto.exe
new file: vgmtest.exe
new file: vrl2vrs
new file: vrsdump
reduce stack size. Watcom C makes STACK part of DGROUP and will error
out if DGROUP exceeds 64KB. I can't find the switches or options to not
make STACK part of DGROUP. 55KB of stack is overkill for 16-bit DOS
anyway.
bakapi modex16 test fun: allow video mode choice from command line.
new "-mx <mode>" option to do that. Modes look good, though 192x144 is a
little off.
cleanup keyboard input handling. run screensaver in a loop until kbhit,
then break out, THEN worry about user input. Replace scanf nonsense with
simple getch() and keyboard response, since the prompt shown to the user
doesn't say to hit ENTER after typing 1, 2, 3, 4, 6, or 0, or "65536"
for changing the tile variable.
remove copypasta from vga library. The modex16 routines are a better fit
for the code at this time. I have a few questions about #defines. Add
reminder to self (or Sparky4) that the modex16 library could benefit
from an enum or #define constants to make the code more readable where
calls to modex16 are involved setting up VGA X modes (i.e what does "0"
and "1" mean in the first param?).