Skip to content

ifknot/RETROLIB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RETROLIB

DOS Retro Computer development library designed to provide low level access to retro computer graphics hardware, audio, keyboard, mouse, joystick, fixed point and vector math.

RETROLIB is written in C(99) and 8086 assembly language using the Zed Editor with the Open Watcom 2 Compiler and tested with Doxbox-X and EMU86.

Check out the Wiki for details on setting up Open Watcom 2 and CMake on Linux and Mac OS X.

test gif

test_gif

DOING:


  • which is faster? vline or hline?

  • hga circle
  • demo circle

  • bresenham line
    • white pixels
    • optimise
    • black pixels

TODO:


  • demo hga pixelate text
    • hga_scroll_up
    • bible
    • shakespeare
    • move to done

  • demo rectangle recursive generative Mondrian-esque
    • math_random
    • move to done

  • code as a creative medium
    • demo buffer png anim to git readme
    • demo Mandelbrot fixed point
      • hga
      • incolor
      • cga
    • demo Mondrian
      • incolor
      • cga
  • incolor video modes
  • hga_scroll_down
  • test file size/file pos works properly

  • Q10.6
    • conversions
    • operators
    • trigonometry
    • 2D vectors
  • [?] Q16.16

  • Mandelbrot
    • Q10.6
    • Q16.16

  • hga read pixel

  • hga byte aligned block transfer
  • demo byte_aligned_blt

  • draw some 1 bit playing cards for a nice change
  • mouse input
  • drag and drop playing cards

  • [?] rectangle dashed line
  • [?] pattern filled rectangle

DONE



  • hga pixel perf compare algos
  • dosbox-x capture avi
  • imagemagick convert avo to gif
  • add to github readme.md
  • hga rectangle
    • rectangle
  • hga filled rectangle
  • hga hline
  • hga vline
  • hga 2 types plot pixel
  • DOSAPPS\VIDEOINF.EXE
  • hga finish buffer demo
  • hga read write vram using y lookup
  • hga test ytable
  • hga fix MDA naming
  • convert video mode preset names and table
  • TEXT2BIT demo
  • 86Box on Mac https://github.com/86Box/86Box
  • MacBox for 86Box https://github.com/Moonif/MacBox
  • get it all working as below on ARM OS X
  • switch to Linux on T480
  • use git gui
  • compile open watcom 2
  • use Zed
  • wcl HELLO.EXE test use DOSBOX
  • convert to source and build directories within RETROLIB base directory
  • use CMake
  • cmake -G "Watcom WMake" -D CMAKE_SYSTEM_NAME=DOS -D CMAKE_SYSTEM_PROCESSOR=I86 -S. -B /path_to/build_dir
  • cmake --build /path_to/build_dir --config DEBUG --target HELLOW
  • bld.sh
  • cmake outisde src -B ../
  • cmake OW2 C90 extensions -za99 (Pass remaining options to the native tool.)
  • configure versioning in .h files
  • does it work with comments? - yes
  • install and try cmake-gui
  • build from DBG and BIOS
  • ow2 model large fix errors using compiler option -ml
  • clean up headers

  • mem_arena
  • TIME into bios_tools_timer.h

MAYBE

  • getopt own version
  • dos_tools_file_dump

  • --graphviz

  • use NASA's IKOS https:github.com/NASA-SW-VnV/ikos'

  • get bbd-for-c to compile https:github.com/grassator/bdd-for-c

  • use bdd-for-c

About

DOS game engine C 99 and 8086 assembly

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages