DVX_GUI/src/libs/kpunch/libdvx
2026-10-13 13:49:12 -05:00
..
platform Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
thirdparty New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
apiref.dhs Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
arch.dhs Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
dvxApp.c Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
dvxApp.h Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxComp.c New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxComp.h New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxCur.h All new BASIC compiler and VM. 2026-10-05 20:01:04 -05:00
dvxDialog.c Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
dvxDlg.h Lots of new BASIC features. 2026-09-30 09:57:59 -05:00
dvxDraw.c Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
dvxDraw.h Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
dvxDriver.c Screenshots of automated tests easier to view. 2026-09-29 19:23:15 -05:00
dvxDrv.h New installer. Game features! 2026-09-29 17:03:51 -05:00
dvxFont.h New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxImage.c Another deep dive on the code. Needs serious testing. 2026-06-24 20:21:45 -05:00
dvxImageWrite.c New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxMem.h Many fixes and greatly increased test coverage. 2026-08-31 14:15:53 -05:00
dvxPal.h New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxPrefs.c Pathname and drive letter enhancements. 2026-10-13 13:49:12 -05:00
dvxPrefs.h Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxPrefsBas.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxRes.h Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxResource.c New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
dvxTypes.h Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
dvxVideo.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxVideo.h Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxWgt.h Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
dvxWgtP.h Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
dvxWm.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
dvxWm.h Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
games.dhs Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
help.png Major project layout change. Source locations now more match where binaries end up. 2026-04-16 19:33:17 -05:00
libdvx.dep Major project layout change. Source locations now more match where binaries end up. 2026-04-16 19:33:17 -05:00
Makefile Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
README.md New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
sdkGuide.dhs Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
sysdoc.dhs New toolchain installer. Serious number of bugs fixed. New Program Manager and File Manager. TCP/IP and printing added. SQLite upgraded. Safe video mode startup added. File associations. Terminal program. First run welcome. New docs. Whew. 2026-09-28 15:31:13 -05:00
widgetClass.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
widgetCore.c Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
widgetEvent.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
widgetIface.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
widgetLayout.c Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00
widgetOps.c Huge amount of BASIC API work. 2026-10-12 14:19:24 -05:00
widgetScrollbar.c Big disks, FAT32, and long filenames are now supported. 2026-10-12 21:23:16 -05:00

libdvx -- DVX Core Library

The core windowing GUI: VESA video backend, drawing primitives, dirty-rect compositor, window manager, and the public application API. Every DVX application links against this library.

Documentation

Full reference is authored in the .dhs help sources in this directory and compiles into the DVX System Reference:

  • sysdoc.dhs -- Developer Overview (entry point of the technical reference)
  • arch.dhs -- five-layer architecture, display pipeline, module system
  • apiref.dhs -- every public function, struct, enum, and constant

After make, the compiled form is bin/apps/kpunch/progman/dvxhelp.hlp (viewable via the Help Viewer app) and docs/dvx_system_reference.html.

Source Files

Public headers live alongside implementation:

  • dvxTypes.h -- shared types (DisplayT, RectT, BlitOpsT, ColorSchemeT, etc.)
  • dvxVideo.h / .c -- layer 1: VESA init, LFB mapping, backbuffer
  • dvxDraw.h / .c -- layer 2: rect fill, bevel, text, bitmap blits
  • dvxComp.h / .c -- layer 3: dirty rect list, merge, LFB flush
  • dvxWm.h / .c -- layer 4: window manager, chrome, drag, resize
  • dvxApp.h / .c -- layer 5: event loop, public API, aggregator
  • dvxWgt.h -- widget base (WidgetT, WidgetClassT, WgtIfaceT)
  • dvxWgtP.h -- widget-internal helpers
  • dvxDlg.h / dvxDialog.c -- message/input/choice/file dialogs
  • dvxRes.h / dvxResource.c -- .res resource system
  • dvxMem.h -- memory allocation wrappers
  • dvxPrefs.h / .c -- INI-format preferences (on DOS compiled into dvx.exe, not libdvx.lib, and exported to every module)
  • dvxFont.h -- bundled 8x16 bitmap font
  • dvxCur.h -- mouse cursor bitmaps
  • dvxPal.h -- 16-color CGA palette
  • widgetCore.c / widgetLayout.c / widgetEvent.c / widgetClass.c -- widget runtime helpers shared across all widget plugins
  • dvxImage.c / dvxImageWrite.c -- image loader/writer (BMP, PNG via stb)
  • platform/dvxPlat.h -- platform-layer interface (implemented per target)

Build

make -C src/libs/kpunch/libdvx (invoked by the top-level make).