Begin task refactor
Store state using interrupt stack instead. Looks like `int 0x80` doesn't
work though, which is odd.
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json
new file mode 100644
index 0000000..1552d82
--- /dev/null
+++ b/.vscode/c_cpp_properties.json
@@ -0,0 +1,23 @@
+{
+ "configurations": [
+ {
+ "name": "Bluejay",
+ "includePath": [
+ "${workspaceFolder}/**",
+ "${workspaceFolder}/include",
+ "${workspaceFolder}/include/kernel",
+ "${workspaceFolder}/src/kernel"
+ ],
+ "defines": [],
+ "compilerPath": "/usr/bin/gcc",
+ "cStandard": "c11",
+ // "cppStandard": "c++14",
+ "intelliSenseMode": "linux-gcc-x86",
+ // "compileCommands": "${workspaceFolder}/compile_commands.json",
+ "compilerArgs": [
+ "-nostdinc -nostdlib -O2 -m32 -g"
+ ]
+ }
+ ],
+ "version": 4
+}
\ No newline at end of file
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..57b1c71
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,18 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "type": "gdb",
+ "request": "attach",
+ "name": "Attach to QEMU",
+ "executable": "./src/kernel/kernel.elf",
+ "target": ":1234",
+ "remote": true,
+ "cwd": "${workspaceRoot}",
+ "valuesFormatting": "parseText",
+ }
+ ]
+}
\ No newline at end of file
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
new file mode 100644
index 0000000..3ca0ef0
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,17 @@
+{
+ // See https://go.microsoft.com/fwlink/?LinkId=733558
+ // for the documentation about the tasks.json format
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "qemu:build",
+ "type": "shell",
+ "command": "make -C src/kernel/ debug-wait",
+ "problemMatcher": [],
+ "group": {
+ "kind": "build",
+ "isDefault": true
+ }
+ }
+ ],
+}
\ No newline at end of file