Hacker's Edge Game Guide: Files in Hacker's Edge/KERNEL.SYS

KERNEL.SYS
Oct. 15, 2012
Last updated at Aug. 3, 2016

The official KERNEL.SYS is a relocatable binary format file which is loaded by BOOT.SYS when the host boots up, either during your first connection into the game world to that host, or by issuing the reboot command in-game.

The KERNEL.SYS can be completely replaced with a new binary you create yourself, however, if you change out the kernel, be sure to either use a compatible API with the official kernel, or have new tools created which use your kernel's unique API.

You can find out more about the binary file format in another game guide.

Currently the source code the official kernel is unavailable, however rumor has it some players have been able to successfully disassemble the kernel binary back into assembly source code.

APIs provided

JSR callAddress in memory
JSR %print$fe00
JSR %input$fe02
JSR %strcmp$fe04
JSR %memclr$fe06
JSR %memcpy$fe08

Binary listing

 0xff  0x0  0xa 0x6c 0x30 0x4b 0x74 0x3a 0x55 0xe4 0xe9 0xf2 0xf7 0x64 0x48 0x61 0x63
 0x6b 0x65 0x72 0x4b 0x65 0x72 0x6e 0x65 0x6c 0x20 0x76 0x30 0x2e 0x32 0x20 0x24 0x52
 0x65 0x76 0x3a 0x20 0x31 0x36 0x32 0x20 0x24  0xa  0x0 0x78  0x0 0x89  0x0 0x9e  0x0
 0xbe  0x0 0xc6  0x0  0x0  0x0 0x20 0x64 0x72 0x69 0x76 0x65 0x72 0x20 0x6c 0x6f 0x61
 0x64 0x65 0x64 0x2e  0xa  0x0 0x20 0x66 0x61 0x69 0x6c 0x65 0x64 0x20 0x74 0x6f 0x20
 0x6c 0x6f 0x61 0x64 0x2e  0xa  0x0 0x46 0x49 0x4c 0x45 0x49 0x4f 0x2e 0x53 0x59 0x53
  0x0 0x4e 0x45 0x54 0x44 0x52 0x56 0x2e 0x53 0x59 0x53  0x0 0xa9 0xfe 0x85 0x71 0xa9
  0x0 0x85 0x70 0xa9 0x1f 0x85 0xf0 0xa0  0x0 0xb1 0xf0 0xf0  0xa 0x91 0x70 0xc8 0xa9
 0xf0 0x91 0x70 0xc8 0x80 0xf2 0xa9  0x0 0x85 0xf0 0xa0  0x0 0x3f  0x0 0xfe 0xa9 0x4e
 0x85 0x80 0xa5 0xf1 0x85 0x81 0xa9 0xf2 0x20 0xd2  0x0 0xa0 0x4e 0xad 0x86 0xff 0xd0
 0x3a 0x20 0xe3  0x0 0xa9 0xf2 0x8d  0x1 0xf2 0x3f  0x0 0xf2 0xa9 0x59 0x85 0x80 0xa9
 0xf3 0x20 0xd2  0x0 0xa0 0x59 0xad 0x86 0xff 0xd0 0x1f 0x20 0xe3  0x0 0xa9 0xf3 0x8d
  0x1 0xf3 0x3f  0x0 0xf3 0xa0 0xff 0xa9  0x0 0x85 0xfa 0xa9  0x8 0x85 0xfb 0xa9  0x0
 0x20 0xbe  0x0 0xa9  0x2 0x85 0xf1  0x0 0x20 0xec  0x0 0x80 0xe7  0x8 0x48 0xb1 0xf0
 0xc9  0x0 0xf0  0x6 0x8d 0xd0 0xff 0xc8 0xd0 0xf4 0x68 0x28 0x60  0x8 0x48 0xad 0xe0
 0xff 0x91 0xf0 0xc9  0xa 0xf0  0x3 0xc8 0xd0 0xf4 0xa9  0x0 0x91 0xf0 0x68 0x28 0x60
 0x48 0x5a 0xa0  0x0 0xb1 0xfa 0x85 0xff 0xb1 0xfc 0xc5 0xff 0xd0  0xc 0xc8 0xa9  0x0
 0xc5 0xff 0xd0 0xef 0x85 0xff 0x7a 0x68 0x60 0xa9  0x1 0x85 0xff 0xd0 0xf7 0x91 0xfa
 0x88 0xd0 0xfb 0x91 0xfa 0x60 0xb1 0xfa 0x91 0xfc 0x88 0xd0 0xf9 0xb1 0xfa 0x91 0xfc
 0x60 0x48 0xa9  0x3 0x8d 0x82 0xff 0x9c 0x83 0xff 0x9c 0x85 0xff 0x68 0x8d 0x84 0xff
 0x60 0x20 0x78  0x0 0xa0 0x2b 0x20 0x78  0x0 0x60 0xa9 0x1f 0x8d 0xd4 0xff 0x20 0x78
  0x0 0xa0 0x3c 0x20 0x78  0x0 0xa9 0x20 0x8d 0xd4 0xff 0x60