From 5f6c7f82bc818266b8ab9708002d67594af74d93 Mon Sep 17 00:00:00 2001 From: Jeremiah Orians Date: Tue, 28 Mar 2017 20:25:39 -0400 Subject: [PATCH] Added license to all source files --- High_level_prototypes/asm.c | 16 ++++++++++++++++ High_level_prototypes/disasm.c | 16 ++++++++++++++++ Knight.py | 15 +++++++++++++++ Library function prototypes/add_node.s | 16 ++++++++++++++++ Library function prototypes/clear_string.s | 15 +++++++++++++++ Library function prototypes/copy_string.s | 15 +++++++++++++++ Library function prototypes/malloc.s | 15 +++++++++++++++ Library function prototypes/readline.s | 15 +++++++++++++++ Library function prototypes/strcmp.s | 15 +++++++++++++++ Linux Bootstrap/exec_enable.hex | 15 +++++++++++++++ Linux Bootstrap/exec_enable.s | 15 +++++++++++++++ Linux Bootstrap/hex.c | 16 ++++++++++++++++ Linux Bootstrap/hex0.hex | 15 +++++++++++++++ Linux Bootstrap/hex0.s | 15 +++++++++++++++ Linux Bootstrap/read.hex | 15 +++++++++++++++ Linux Bootstrap/read.s | 15 +++++++++++++++ Linux Bootstrap/test.sh | 16 ++++++++++++++++ Linux Bootstrap/xeh.c | 16 ++++++++++++++++ Linux Bootstrap/xeh.hex0 | 17 ++++++++++++++++- Linux Bootstrap/xeh.s | 15 +++++++++++++++ User_Interface.py | 15 +++++++++++++++ Web Interface prototype Generator.py | 15 +++++++++++++++ dynamic_execution_trace.c | 16 ++++++++++++++++ public/script.js | 16 ++++++++++++++++ public/style.css | 16 ++++++++++++++++ stage0/stage0_monitor.hex0 | 15 +++++++++++++++ stage0/stage0_monitor.s | 15 +++++++++++++++ stage1/CAT.s | 15 +++++++++++++++ stage1/High_level_prototypes/M0-macro.c | 16 ++++++++++++++++ stage1/High_level_prototypes/SET.c | 16 ++++++++++++++++ stage1/High_level_prototypes/dehex.c | 16 ++++++++++++++++ stage1/High_level_prototypes/more.c | 16 ++++++++++++++++ .../High_level_prototypes/stage1_assembler-1.c | 16 ++++++++++++++++ .../High_level_prototypes/stage1_assembler-2.c | 16 ++++++++++++++++ stage1/M0-macro.hex2 | 15 +++++++++++++++ stage1/M0-macro.s | 15 +++++++++++++++ stage1/SET.hex0 | 15 +++++++++++++++ stage1/SET.hex2 | 15 +++++++++++++++ stage1/SET.s | 15 +++++++++++++++ stage1/dehex.hex0 | 15 +++++++++++++++ stage1/dehex.s | 15 +++++++++++++++ stage1/more.hex0 | 15 +++++++++++++++ stage1/more.s | 15 +++++++++++++++ stage1/stage1_assembler-0.hex0 | 15 +++++++++++++++ stage1/stage1_assembler-0.s | 15 +++++++++++++++ stage1/stage1_assembler-1.hex0 | 15 +++++++++++++++ stage1/stage1_assembler-1.hex1 | 15 +++++++++++++++ stage1/stage1_assembler-1.s | 15 +++++++++++++++ stage1/stage1_assembler-2.hex0 | 15 +++++++++++++++ stage1/stage1_assembler-2.hex1 | 15 +++++++++++++++ stage1/stage1_assembler-2.hex2 | 15 +++++++++++++++ stage1/stage1_assembler-2.s | 15 +++++++++++++++ stage2/High_level_prototypes/lisp.c | 16 ++++++++++++++++ stage2/High_level_prototypes/lisp.h | 16 ++++++++++++++++ stage2/High_level_prototypes/lisp_cell.c | 16 ++++++++++++++++ stage2/High_level_prototypes/lisp_eval.c | 16 ++++++++++++++++ stage2/High_level_prototypes/lisp_print.c | 16 ++++++++++++++++ stage2/High_level_prototypes/lisp_read.c | 16 ++++++++++++++++ stage2/forth.s | 15 +++++++++++++++ stage2/lisp.s | 15 +++++++++++++++ tty.c | 16 ++++++++++++++++ vm.c | 16 ++++++++++++++++ vm.h | 16 ++++++++++++++++ vm_decode.c | 16 ++++++++++++++++ vm_instructions.c | 16 ++++++++++++++++ wrapper.c | 16 ++++++++++++++++ x86/stage0/stage0_monitor.hex | 15 +++++++++++++++ x86/stage0/stage0_monitor.s | 16 ++++++++++++++++ x86/stage1/stage1_disk_copier.s | 15 +++++++++++++++ x86/stage1/stage1_hex_compiler.s | 15 +++++++++++++++ x86/stage1/stage1_hex_editor.s | 15 +++++++++++++++ x86/stage1/stage1_loader.hex | 15 +++++++++++++++ x86/stage1/stage1_loader.s | 15 +++++++++++++++ x86/stage1/stage1_raw_writer.s | 15 +++++++++++++++ 74 files changed, 1139 insertions(+), 1 deletion(-) diff --git a/High_level_prototypes/asm.c b/High_level_prototypes/asm.c index fc728cf..62b9ed7 100644 --- a/High_level_prototypes/asm.c +++ b/High_level_prototypes/asm.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/High_level_prototypes/disasm.c b/High_level_prototypes/disasm.c index bfdec0a..70831b3 100644 --- a/High_level_prototypes/disasm.c +++ b/High_level_prototypes/disasm.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/Knight.py b/Knight.py index 9712d90..f727526 100755 --- a/Knight.py +++ b/Knight.py @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + import os, os.path import string import array diff --git a/Library function prototypes/add_node.s b/Library function prototypes/add_node.s index 0e73d54..094c9c8 100644 --- a/Library function prototypes/add_node.s +++ b/Library function prototypes/add_node.s @@ -1,3 +1,19 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + + ;; add_node Function ;; Recieves pointers in R0 R1 ;; Alters R0 if NULL diff --git a/Library function prototypes/clear_string.s b/Library function prototypes/clear_string.s index 02fbe55..5df1c6b 100644 --- a/Library function prototypes/clear_string.s +++ b/Library function prototypes/clear_string.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + # We will be using R0 to pass pointer to string # to cleared by the function # R15 will be used as the stack pointer diff --git a/Library function prototypes/copy_string.s b/Library function prototypes/copy_string.s index 7cac510..6a907ac 100644 --- a/Library function prototypes/copy_string.s +++ b/Library function prototypes/copy_string.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + # We will be using R0 and R1 to pass values to the function # R15 will be used as the stack pointer :start diff --git a/Library function prototypes/malloc.s b/Library function prototypes/malloc.s index 2aa0556..e665504 100644 --- a/Library function prototypes/malloc.s +++ b/Library function prototypes/malloc.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + # We will be using R0 request a number of bytes # The pointer to the block of that size is to be # passed back in R0, for simplicity sake diff --git a/Library function prototypes/readline.s b/Library function prototypes/readline.s index 6c1e49d..998c775 100644 --- a/Library function prototypes/readline.s +++ b/Library function prototypes/readline.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + ;; Readline function ;; Recieves Pointer to node in R0 ;; And Input in R1 diff --git a/Library function prototypes/strcmp.s b/Library function prototypes/strcmp.s index d234c66..0208a74 100644 --- a/Library function prototypes/strcmp.s +++ b/Library function prototypes/strcmp.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + # We will be using R0 and R1 to pass values to the function # R15 will be used as the stack pointer :start diff --git a/Linux Bootstrap/exec_enable.hex b/Linux Bootstrap/exec_enable.hex index 64c3cd5..e24dff9 100644 --- a/Linux Bootstrap/exec_enable.hex +++ b/Linux Bootstrap/exec_enable.hex @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + ## Exec_enable program ## Takes only single arg ## Shitty to use but essential if you need it diff --git a/Linux Bootstrap/exec_enable.s b/Linux Bootstrap/exec_enable.s index 8a7e76d..ed44473 100644 --- a/Linux Bootstrap/exec_enable.s +++ b/Linux Bootstrap/exec_enable.s @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + .text # section declaration # we must export the entry point to the ELF linker or loader. diff --git a/Linux Bootstrap/hex.c b/Linux Bootstrap/hex.c index b469906..95737ee 100644 --- a/Linux Bootstrap/hex.c +++ b/Linux Bootstrap/hex.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/Linux Bootstrap/hex0.hex b/Linux Bootstrap/hex0.hex index 3327e4e..6253baf 100644 --- a/Linux Bootstrap/hex0.hex +++ b/Linux Bootstrap/hex0.hex @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + ## Self Bootstrapping Hex Assembler written in Hex ## And a shitload of comments ## That can be converted to assembly and compiled diff --git a/Linux Bootstrap/hex0.s b/Linux Bootstrap/hex0.s index af59b1d..d172e47 100644 --- a/Linux Bootstrap/hex0.s +++ b/Linux Bootstrap/hex0.s @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # Our writable space .data .global _start diff --git a/Linux Bootstrap/read.hex b/Linux Bootstrap/read.hex index 59b437d..ee57305 100644 --- a/Linux Bootstrap/read.hex +++ b/Linux Bootstrap/read.hex @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # ELF Header 7F 45 4C 46 ## e_ident[EI_MAG0-3] ELF's magic number 02 ## e_ident[EI_CLASS] Indicating 64 bit diff --git a/Linux Bootstrap/read.s b/Linux Bootstrap/read.s index 087ff25..c29e000 100644 --- a/Linux Bootstrap/read.s +++ b/Linux Bootstrap/read.s @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + .data # we must export the entry point to the ELF linker or loader. # They convientionally recognize _start as their entry point. diff --git a/Linux Bootstrap/test.sh b/Linux Bootstrap/test.sh index 5348de3..07e09e0 100755 --- a/Linux Bootstrap/test.sh +++ b/Linux Bootstrap/test.sh @@ -1,5 +1,21 @@ #!/bin/bash +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + + # Build new ./bin/hex < hex0.hex | sponge bin/trial && ./bin/exec_enable bin/trial diff --git a/Linux Bootstrap/xeh.c b/Linux Bootstrap/xeh.c index bbfc5ba..0d03508 100644 --- a/Linux Bootstrap/xeh.c +++ b/Linux Bootstrap/xeh.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include int main (int argc, char *argv[]) diff --git a/Linux Bootstrap/xeh.hex0 b/Linux Bootstrap/xeh.hex0 index c05ab0c..2043c5c 100644 --- a/Linux Bootstrap/xeh.hex0 +++ b/Linux Bootstrap/xeh.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + ## ELF Header 7F 45 4C 46 ## e_ident[EI_MAG0-3] ELF's magic number 02 ## e_ident[EI_CLASS] Indicating 64 bit @@ -68,4 +83,4 @@ eb 82 # jmp 600078 <_start> 30 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46 0A ## Where the byte we are reading is shoved -00 \ No newline at end of file +00 diff --git a/Linux Bootstrap/xeh.s b/Linux Bootstrap/xeh.s index 5780662..dd827e6 100644 --- a/Linux Bootstrap/xeh.s +++ b/Linux Bootstrap/xeh.s @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + .data # we must export the entry point to the ELF linker or loader. # They convientionally recognize _start as their entry point. diff --git a/User_Interface.py b/User_Interface.py index 0506cb9..22e50f1 100644 --- a/User_Interface.py +++ b/User_Interface.py @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + import subprocess import ctypes import re diff --git a/Web Interface prototype Generator.py b/Web Interface prototype Generator.py index 9525949..35bff5d 100644 --- a/Web Interface prototype Generator.py +++ b/Web Interface prototype Generator.py @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + import User_Interface as UI print(UI.returnPage()) diff --git a/dynamic_execution_trace.c b/dynamic_execution_trace.c index 35b9747..c33309f 100644 --- a/dynamic_execution_trace.c +++ b/dynamic_execution_trace.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/public/script.js b/public/script.js index 366be63..d549649 100644 --- a/public/script.js +++ b/public/script.js @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + $(document).ready(function () { if(window.location.href.indexOf("RUN") > -1) { setTimeout("location.reload(true);",500); diff --git a/public/style.css b/public/style.css index c4aa608..f30d784 100644 --- a/public/style.css +++ b/public/style.css @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + @font-face { font-family: 'TTY'; src: url("Glass_TTY_VT220.ttf"); diff --git a/stage0/stage0_monitor.hex0 b/stage0/stage0_monitor.hex0 index c504f49..91b7eba 100644 --- a/stage0/stage0_monitor.hex0 +++ b/stage0/stage0_monitor.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start 2D2B0001 # LOADUI R11 1 ; Our toggle 2D2D0600 # LOADUI R13 0x600 ; Where we are starting our Stack diff --git a/stage0/stage0_monitor.s b/stage0/stage0_monitor.s index 490ff6e..baaebbc 100644 --- a/stage0/stage0_monitor.s +++ b/stage0/stage0_monitor.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R11 1 ; Our toggle LOADUI R13 0x600 ; Where we are starting our Stack diff --git a/stage1/CAT.s b/stage1/CAT.s index 4ddfb04..83f45b5 100644 --- a/stage1/CAT.s +++ b/stage1/CAT.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + ;; CAT program ;; Concatinates multiple tapes into a single tape output ;; Read tapes in tape_01 and writes the assembled result diff --git a/stage1/High_level_prototypes/M0-macro.c b/stage1/High_level_prototypes/M0-macro.c index 9aabfa9..0819b91 100644 --- a/stage1/High_level_prototypes/M0-macro.c +++ b/stage1/High_level_prototypes/M0-macro.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage1/High_level_prototypes/SET.c b/stage1/High_level_prototypes/SET.c index 719fe13..465522a 100644 --- a/stage1/High_level_prototypes/SET.c +++ b/stage1/High_level_prototypes/SET.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + /**************************************** * Shitty Expensive Typewriter * * A more shitty remake of the PDP-1's * diff --git a/stage1/High_level_prototypes/dehex.c b/stage1/High_level_prototypes/dehex.c index cddf3b9..0e02b92 100644 --- a/stage1/High_level_prototypes/dehex.c +++ b/stage1/High_level_prototypes/dehex.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage1/High_level_prototypes/more.c b/stage1/High_level_prototypes/more.c index 4f0f110..e0bf1c1 100644 --- a/stage1/High_level_prototypes/more.c +++ b/stage1/High_level_prototypes/more.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage1/High_level_prototypes/stage1_assembler-1.c b/stage1/High_level_prototypes/stage1_assembler-1.c index 61bf4af..7373f48 100644 --- a/stage1/High_level_prototypes/stage1_assembler-1.c +++ b/stage1/High_level_prototypes/stage1_assembler-1.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage1/High_level_prototypes/stage1_assembler-2.c b/stage1/High_level_prototypes/stage1_assembler-2.c index 4526a4a..2798afe 100644 --- a/stage1/High_level_prototypes/stage1_assembler-2.c +++ b/stage1/High_level_prototypes/stage1_assembler-2.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage1/M0-macro.hex2 b/stage1/M0-macro.hex2 index cea258a..ba75091 100644 --- a/stage1/M0-macro.hex2 +++ b/stage1/M0-macro.hex2 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + :start # ;; We will be using R13 for storage of Head # ;; We will be using R14 for our condition codes diff --git a/stage1/M0-macro.s b/stage1/M0-macro.s index f0b07eb..c669fef 100644 --- a/stage1/M0-macro.s +++ b/stage1/M0-macro.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start ;; We will be using R13 for storage of Head ;; We will be using R14 for our condition codes diff --git a/stage1/SET.hex0 b/stage1/SET.hex0 index 690f958..d0cd59f 100644 --- a/stage1/SET.hex0 +++ b/stage1/SET.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start 2D2F0394 # LOADUI R15 $stack ; Put stack at end of program # ;; We will be using R14 for our condition codes diff --git a/stage1/SET.hex2 b/stage1/SET.hex2 index 7da9420..fa77858 100644 --- a/stage1/SET.hex2 +++ b/stage1/SET.hex2 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + :start 2D2F $stack # LOADUI R15 $stack ; Put stack at end of program # ;; We will be using R14 for our condition codes diff --git a/stage1/SET.s b/stage1/SET.s index 90890e7..2f181cd 100644 --- a/stage1/SET.s +++ b/stage1/SET.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R15 $stack ; Put stack at end of program ;; We will be using R14 for our condition codes diff --git a/stage1/dehex.hex0 b/stage1/dehex.hex0 index 5aa0db0..f77f8b4 100644 --- a/stage1/dehex.hex0 +++ b/stage1/dehex.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start 0D00002E # FALSE R14 ; R14 will be storing our current address 2D2F00e0 # LOADUI R15 $end ; We will be using R15 for our stack diff --git a/stage1/dehex.s b/stage1/dehex.s index 07f936a..7f257da 100644 --- a/stage1/dehex.s +++ b/stage1/dehex.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start FALSE R14 ; R14 will be storing our current address LOADUI R15 $end ; We will be using R15 for our stack diff --git a/stage1/more.hex0 b/stage1/more.hex0 index efd2164..909d522 100644 --- a/stage1/more.hex0 +++ b/stage1/more.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start 2D22000a # LOADUI R2 10 ; We will be using R2 for our counter # ;; Prep TAPE_01 diff --git a/stage1/more.s b/stage1/more.s index 321b1d8..b8b1b80 100644 --- a/stage1/more.s +++ b/stage1/more.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R2 10 ; We will be using R2 for our counter ;; Prep TAPE_01 diff --git a/stage1/stage1_assembler-0.hex0 b/stage1/stage1_assembler-0.hex0 index 8b7dbfd..3b6d776 100644 --- a/stage1/stage1_assembler-0.hex0 +++ b/stage1/stage1_assembler-0.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # start 2D2A000f # LOADUI R10 0x0F ; Byte mask 2D2B0001 # LOADUI R11 1 ; Our toggle diff --git a/stage1/stage1_assembler-0.s b/stage1/stage1_assembler-0.s index 2d2ae29..c988453 100644 --- a/stage1/stage1_assembler-0.s +++ b/stage1/stage1_assembler-0.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R10 0x0F ; Byte mask LOADUI R11 1 ; Our toggle diff --git a/stage1/stage1_assembler-1.hex0 b/stage1/stage1_assembler-1.hex0 index 7a60d75..f5eaf12 100644 --- a/stage1/stage1_assembler-1.hex0 +++ b/stage1/stage1_assembler-1.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # start 2D2801e8 # LOADUI R8 @table ; Where we are putting our address pointers 2D2900ff # LOADUI R9 0xFF ; Byte mask diff --git a/stage1/stage1_assembler-1.hex1 b/stage1/stage1_assembler-1.hex1 index 379cac8..a3c05e6 100644 --- a/stage1/stage1_assembler-1.hex1 +++ b/stage1/stage1_assembler-1.hex1 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # start 2D28 @z # LOADUI R8 @table ; Where we are putting our address pointers 2D2900ff # LOADUI R9 0xFF ; Byte mask diff --git a/stage1/stage1_assembler-1.s b/stage1/stage1_assembler-1.s index 5f4a29d..af73b87 100644 --- a/stage1/stage1_assembler-1.s +++ b/stage1/stage1_assembler-1.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R8 @table ; Where we are putting our address pointers LOADUI R9 0xFF ; Byte mask diff --git a/stage1/stage1_assembler-2.hex0 b/stage1/stage1_assembler-2.hex0 index f308dac..4a0f850 100644 --- a/stage1/stage1_assembler-2.hex0 +++ b/stage1/stage1_assembler-2.hex0 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start 2D2D040c # LOADUI R13 @table ; Where we are putting our table # ;; We will be using R14 for our condition codes diff --git a/stage1/stage1_assembler-2.hex1 b/stage1/stage1_assembler-2.hex1 index 11ab011..e13d35e 100644 --- a/stage1/stage1_assembler-2.hex1 +++ b/stage1/stage1_assembler-2.hex1 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # :start :0 2D2D @1 # LOADUI R13 @table ; Where we are putting our table diff --git a/stage1/stage1_assembler-2.hex2 b/stage1/stage1_assembler-2.hex2 index ab03194..c525d1e 100644 --- a/stage1/stage1_assembler-2.hex2 +++ b/stage1/stage1_assembler-2.hex2 @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + :start 2D2D @table # LOADUI R13 @table ; Where we are putting our table # ;; We will be using R14 for our condition codes diff --git a/stage1/stage1_assembler-2.s b/stage1/stage1_assembler-2.s index 6c93ad6..bcbd311 100644 --- a/stage1/stage1_assembler-2.s +++ b/stage1/stage1_assembler-2.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + :start LOADUI R13 @table ; Where we are putting our table ;; We will be using R14 for our condition codes diff --git a/stage2/High_level_prototypes/lisp.c b/stage2/High_level_prototypes/lisp.c index 154489c..d3bfc2f 100644 --- a/stage2/High_level_prototypes/lisp.c +++ b/stage2/High_level_prototypes/lisp.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "lisp.h" #include diff --git a/stage2/High_level_prototypes/lisp.h b/stage2/High_level_prototypes/lisp.h index 21b956d..1873d22 100644 --- a/stage2/High_level_prototypes/lisp.h +++ b/stage2/High_level_prototypes/lisp.h @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/stage2/High_level_prototypes/lisp_cell.c b/stage2/High_level_prototypes/lisp_cell.c index d305993..c649e50 100644 --- a/stage2/High_level_prototypes/lisp_cell.c +++ b/stage2/High_level_prototypes/lisp_cell.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "lisp.h" struct cell *free_cells, *gc_block_start, *gc_block_end; diff --git a/stage2/High_level_prototypes/lisp_eval.c b/stage2/High_level_prototypes/lisp_eval.c index 6406148..242db91 100644 --- a/stage2/High_level_prototypes/lisp_eval.c +++ b/stage2/High_level_prototypes/lisp_eval.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "lisp.h" /* Support functions */ diff --git a/stage2/High_level_prototypes/lisp_print.c b/stage2/High_level_prototypes/lisp_print.c index b2e42c7..506454d 100644 --- a/stage2/High_level_prototypes/lisp_print.c +++ b/stage2/High_level_prototypes/lisp_print.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "lisp.h" void writeobj(FILE *ofp, struct cell* op) diff --git a/stage2/High_level_prototypes/lisp_read.c b/stage2/High_level_prototypes/lisp_read.c index e431d3c..6307555 100644 --- a/stage2/High_level_prototypes/lisp_read.c +++ b/stage2/High_level_prototypes/lisp_read.c @@ -1,3 +1,19 @@ + /* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "lisp.h" #include #include diff --git a/stage2/forth.s b/stage2/forth.s index 3b8b6fc..d46bed3 100644 --- a/stage2/forth.s +++ b/stage2/forth.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + ;; Memory Space ;; 0 -> 512KB code -> Heap space [Heap pointer with malloc function] ;; 512KB -> 576KB Stack space 1 (Return Stack) [Pointed at by R15] diff --git a/stage2/lisp.s b/stage2/lisp.s index 58e4b70..25f2188 100644 --- a/stage2/lisp.s +++ b/stage2/lisp.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + ;; A simple lisp with a precise garbage collector for cells ;; Cells are in the following form: ;; Type (0), CAR (4), CDR (8), ENV (12) diff --git a/tty.c b/tty.c index c020d42..e005ead 100644 --- a/tty.c +++ b/tty.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/vm.c b/vm.c index 8de7cc8..b6db685 100644 --- a/vm.c +++ b/vm.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "vm.h" /* Load program tape into Memory */ diff --git a/vm.h b/vm.h index 90f63b0..e299c2a 100644 --- a/vm.h +++ b/vm.h @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include #include #include diff --git a/vm_decode.c b/vm_decode.c index ed2e60f..f21beb0 100644 --- a/vm_decode.c +++ b/vm_decode.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "vm.h" uint32_t performance_counter; diff --git a/vm_instructions.c b/vm_instructions.c index 33420fa..27005d0 100644 --- a/vm_instructions.c +++ b/vm_instructions.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "vm.h" FILE* tape_01; FILE* tape_02; diff --git a/wrapper.c b/wrapper.c index e26777b..aac8830 100644 --- a/wrapper.c +++ b/wrapper.c @@ -1,3 +1,19 @@ +/* This file is part of stage0. + * + * stage0 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. + * + * stage0 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 stage0. If not, see . + */ + #include "vm.h" #define DEBUG true uint32_t performance_counter; diff --git a/x86/stage0/stage0_monitor.hex b/x86/stage0/stage0_monitor.hex index ba93735..b5c6ff0 100644 --- a/x86/stage0/stage0_monitor.hex +++ b/x86/stage0/stage0_monitor.hex @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # start: # Let us first setup our stack BC0001 # mov sp,0x100 diff --git a/x86/stage0/stage0_monitor.s b/x86/stage0/stage0_monitor.s index 3615226..91f2620 100644 --- a/x86/stage0/stage0_monitor.s +++ b/x86/stage0/stage0_monitor.s @@ -1,3 +1,19 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + + BITS 16 ;; Steps for building ;; nasm -o stage0_monitor stage0_monitor.s diff --git a/x86/stage1/stage1_disk_copier.s b/x86/stage1/stage1_disk_copier.s index 3625b3d..2e5829c 100644 --- a/x86/stage1/stage1_disk_copier.s +++ b/x86/stage1/stage1_disk_copier.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + BITS 16 ;; Steps for building ;; nasm -o stage1_disk_copier stage1_disk_copier.s diff --git a/x86/stage1/stage1_hex_compiler.s b/x86/stage1/stage1_hex_compiler.s index a9c6c1b..685f0a4 100644 --- a/x86/stage1/stage1_hex_compiler.s +++ b/x86/stage1/stage1_hex_compiler.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + BITS 16 ;; Steps for building ;; nasm -o stage1_hex_compiler stage1_hex_compiler diff --git a/x86/stage1/stage1_hex_editor.s b/x86/stage1/stage1_hex_editor.s index d596240..8c1b796 100644 --- a/x86/stage1/stage1_hex_editor.s +++ b/x86/stage1/stage1_hex_editor.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + BITS 16 ;; Steps for building ;; nasm -o stage1_hex_editor stage1_hex_editor.s diff --git a/x86/stage1/stage1_loader.hex b/x86/stage1/stage1_loader.hex index 56895e6..2ae2d74 100644 --- a/x86/stage1/stage1_loader.hex +++ b/x86/stage1/stage1_loader.hex @@ -1,3 +1,18 @@ +## This file is part of stage0. +## +## stage0 is free software: you an 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. +## +## stage0 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 stage0. If not, see . + # start: # Wait for user input before running B400 # mov ah,0x0 diff --git a/x86/stage1/stage1_loader.s b/x86/stage1/stage1_loader.s index b02c2b5..1a86375 100644 --- a/x86/stage1/stage1_loader.s +++ b/x86/stage1/stage1_loader.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + BITS 16 ;; Steps for building ;; nasm -o stage1_loader stage1_loader.s diff --git a/x86/stage1/stage1_raw_writer.s b/x86/stage1/stage1_raw_writer.s index babb94e..3e700d8 100644 --- a/x86/stage1/stage1_raw_writer.s +++ b/x86/stage1/stage1_raw_writer.s @@ -1,3 +1,18 @@ +; This file is part of stage0. +; +; stage0 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. +; +; stage0 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 stage0. If not, see . + BITS 16 ;; Steps for building ;; nasm -o stage1_raw_writer stage1_raw_writer.s