diff --git a/docs/call_conv.md b/docs/call_conv.md new file mode 100644 index 0000000..c7e7d9a --- /dev/null +++ b/docs/call_conv.md @@ -0,0 +1,10 @@ +# Calling convention +## boot0 +I'm not sticking to any particular calling convention for boot0, since we have to golf to fit in +440 bytes. Whatever's most convenient. + +## boot1 +- Arguments: ax, cx, dx, stack +- Return value: ax, cf for booleans +- ax may be clobbered. All other registers are preserved +- Callee cleanup (i.e. the function pops stack arguments when returning)