## Copyright (C) 2016 Jeremiah Orians ## This file is part of M2-Planet. ## ## M2-Planet is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation, either version 3 of the License, or ## (at your option) any later version. ## ## M2-Planet is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with M2-Planet. If not, see . :_start ;; Kernel Setup R12 as HEAP pointer after end of the stack ;; Kernel Setup R15 as Stack pointer after the initial stack frame ;; Default stack frame is: ;; ARGC, ARGV, ENVP, NULL SUBI R14 R15 16 ; Set our base pointer ;; Perform the main loop LOADR R0 4 JUMP 4 &FUNCTION_main CALL R0 R15 ;; Exit to kernel EXIT ; Return what is in R0