Development Diary: First live update in a long time

First live update in a long time
kveroneau(Game Creator)
Jan. 29, 2019, 3:49 a.m.

A new update has been posted to the game server, both HackerTelnetd and HackerWSd have been upgraded to version 1.5, which resolves a bug when in RAW mode. The HackerVM is now at version 1.9, which includes a missing NOP code for 65c02 Virtual Machine, and also includes some code clean-up to make reading and managing the VMManager code much easier.

The next update which should come out later this week is the ability to run both ca65 and cc65 in-game from an in-game host to assemble and compile code. These versions will be preconfigured to compile binaries which run in HackerOS. In the future it will allow custom OS designers to extend their uses to allow for custom include files for use with their custom OS APIs.

Yesterday, I took some time to update many of the help center documentation, so now you can see more up to date information on the various in-game devices your host has access to. Further documentation updates will follow soon, along with some better tutorial documents.

Once the in-game assembler and compiler are ready for consumption, work on some gameplay elements will begin. There is currently a working Economy module that manages the player ranking and experience system. This module also has the code needed for the transfer of player credits within the game world. The only part missing for this to properly work is the in-game banks to finally make a return. So, as you might have guessed, the next major development will be in creating the various in-game assets, such as the banks, DNS, and mail servers. All of which will be running in 65c02 machine code, which can eventually be hacked by smart players to give themselves an Edge in the game.

Let's also not forget about the development of a hybrid assembly and C HackerOS Kernel, where C programs are first class citizens. While C programs can be run on the current HackerOS, they are not optimized for it, and using functions like printf result in very very large binary code. The new HackerOS Kernel will have many useful C functions built right into it. While assembly programs can be made to run on this newer Kernel, it will be made with C programs in mind. So using functions like printf won't take all your memory, and all of your programs will share a common heap. This can lead to memory leaking issues, as you will need to free any memory you might allocate off the heap, or you may just run out of memory to use. This new Kernel will feature two types of executable programs, not unlike COM and EXE files of old. The current BIN format, which loads programs into a fixed memory address will still be supported, and is the recommended way to create assembly programs for those who wish to still use assembly. While a newer format, will support relocatable object code. With this new binary format, the Kernel will allocate memory from the OS heap, and load your program into that location. This will enable multiple programs to be loaded into memory, and potentially multitasked in a future version of the Kernel, or through some player ingenuity. Once this new HackerOS kernel is released, the source for the current Kernel will become available to the public. This will allow players to either learn how the Kernel works, or to potentially find exploits in the code to use against unpatched hosts in the game.

Anyways, this has been a long enough post. That's where we are, and what the goals are for the near future!