jamos

September 2017 (Week 4)

- Started again, old code was too complex
+ Reusing most of my source files so its not that bad
+ Got rid of all project files, makefiles, cmake scripts
+ Making it self-hosted, bundling compiler and libs with the app
- Miniz Zip source code needs endian defines, which needs build configuration, so cant use zip
+ LZ4 and TAR dont have this requirement, so I made my own zip-like-system using tar archives that are then LZ4 shrunk
+ I can recompile the app as java using a c-to-java translator, and it still works when running the .jar file

June 2017 (Week 4)

+ just came home from first day of new job
- I leave home at 6:30am and get back and finish dinner at 8:10pm then I have to go to bed in an hour so I will only do much dev in the weekend
+ Fixed an issue in the original allegro 4.4 source code that caused an infrequent hang on linux (to do with locking the interrupt list from a timer callback if the list was already locked)
+ added run-time resizing without restarting and fixed how I use sdl2 system so rescaling doesnt get messed when change res
+ because you can run game at 640x480 res, resize the window to 800x700 which will render at 640x480, scale it up to 800x600, and then add black bars to 800x700, then if you change internal resolution to 800x600, it will undo the scaling and just add black bars

June 2017 (Week 3)

+ fixed pthreads invalid stack pointer issue in engine
+ now is working on linux too, that is 3 platforms now

June 2017 (Week 2)

+ still working on windows
- gcc gives more errors in optimisation mode, because inliner gives more info

May 2017 (Week 4)

+ changed the terminal emulator to use shorts instead of chars for wide char support (u16)
+ made it read input strings as utf8 instead of ascii (have to detect utf8 encoding and read either 1,2,3, or 4 bytes at a time)
+ changed the font generation to generate unicode ranges for ibm 437 characters
+ modified font drawing by speeding up gylph searching with a 126-lookup table for ascii chars and an andersson tree for unicode codepoints
- might have a memoery bug somewhere, will have to boot up linux system and test under valgrind or something

May 2017 (Week 3)

+ fixed DPMI memory corruption error
+ let it check the auto detected install directory if it cannot find the data files
+ also resolution can be changed and it just internally rescales by using the GPU to stretch the texture
- didn't make any monsters

May 2017 (Week 2)

+ fixed everything and made it work. I am a genius.
+ smooth 62-68 fps 70hz vsync graphics
+ I use a custom poll-for-vsync of old frame while working on new frame to do it

April 2017 (Week 3)

+ added semaphores to break past sdl 40fps event cap
- engine still goes down to 36fps when 9000 objects are on screen at once

April 2017 (Week 2)

+ spent today refactoring some more engine code
+ spent today also learning about steamworks sdk from the documentation
- all improvements are in back end refactoring that is still not finished since last recap

April 2017 (Week 1)

+ got a 3meg dos c compiler that runs on win10 (digitalmars)
+ got dos multithreading working (setjump/longjump)
+ got dos graphics working (vga mode 0x13)
+ got keyboard working (conio)
- can't get sound working yet
- haven't got mouse working yet

March 2017 (Week 5)

+ added opensimplex noise as agdg thread said it was better than perlin noise
+ fixed some more vs6 compile errors and removed optimised double bit twiddling code that was causing the compiler to crash during optimized builds, replaced it with standard libc functions

March 2017 (Week 4)

- Some guy said "i can't get the program to run"
- not all computers can run programs built in msvc 2015
+ Figured out how to install Visual Studio 6 on windows 10
- Modern cmake does not support Visual Studio 6 anymore
+ Ported my cmake script down from 3.2 to 2.8
- There were 1000+ errors building my code on Visual Studio 6
+ Now there are only 175 left plus it still works in MSVC 2015 perfectly
+ When I finally fix them all the exe will be very compatible on all systems

March 2017 (Week 3)

+ Fixed 3 different memory leaks
- Spent 2 days trying to make paint attack but couldn't fix issues
+ Have fixed some file loading / saving
+ Have allowed user to browse to the install dir if it cannot be found manually
+ Have fixed issue in SDL sound init / shutdown
+ Have added sprite sheet support

March 2017 (Week 2)

+ input grabbing / ungrabbing with hotkey
+ escape menu
+ improved performance issue
+ text outliner for putting black borders around white text
- voted worst shit of dd13
+ lua readnumber terminal echoing bug improved slightly

March 2017 (Week 1)

+ fixed signed / unsigned conversion in audio mixer
+ added bass boost to audio output
+ also adding low pass filter for cool
- 3d compositor effects kept always crashing, no 3d for dd13

February 2017 (Week 4)

+ added gsm codec support for audio samples
+ have a big idea but not sure if I can get it done
- put swear words into my source code

February 2017 (Week 3)

+ Added syntax error message so I can fix my scripts easier
- Old car died (1994 Ford Fiesta)
+ Got a new car (GM Spark, white paint)
+ Refactored some of the code
+ Have a good idea and registered domain name for it
- Made a HTML5 game launcher thingo with save files (agdgminicollab.neocities.org)

February 2017 (Week 2)

+ Improved the framerate from 4fps to 13fps by removing an unneeded 136ms function
+ Eliminated per-frame RGB/BGR bitmap format conversion by converting on load.
+ Improved keyboard handling (asynchronously gets the key status such as shift or control keys)
- Sound is choppy.

January 2017 (Week 3)

+ it plays nfs3 atlanta midi
+ i made all source code be in 1 dir instead of spread out
+ i improve VFS system code
+ I add support for loading .PSD files as an image type (using stbimage)