summaryrefslogtreecommitdiff
path: root/spec/iex
diff options
context:
space:
mode:
authorKyle Gunger <kgunger12@gmail.com>2021-08-30 19:07:26 -0400
committerKyle Gunger <kgunger12@gmail.com>2021-08-30 19:07:26 -0400
commitea5ef2fe245c09b35c783977928d6e995110cfb4 (patch)
treee25f71adb433bba34b10c3a013d8b10c24f159e3 /spec/iex
parent628dd83397c47ff484f7c81b06dcd6d1e4af628b (diff)
Scrap old spec, add initial value parsing
Diffstat (limited to 'spec/iex')
-rw-r--r--spec/iex/iex-spec.txt128
1 files changed, 0 insertions, 128 deletions
diff --git a/spec/iex/iex-spec.txt b/spec/iex/iex-spec.txt
deleted file mode 100644
index 6979cfc..0000000
--- a/spec/iex/iex-spec.txt
+++ /dev/null
@@ -1,128 +0,0 @@
-This is the IEX file specification.
-
-Document version (semver): 0.0.1
-Main Author: Kyle Gunger
-
-License: Apache 2.0
-
-----------------------------------
-
-Contents:
-
-Organization
-
-----------------------------------
-
-Organization
-
-Magic number starts the file "IEX" or 0x49 0x45 0x58
-
-The header of the file can be represented as such
-
-;struct IEX_HEAD {
- raw {3}char # Always "IEX"
- magic,
-
- {}char
- name,
- arch,
- os,
-
- uint8 # Version info
- major,
- minor,
- patch,
- # OS abi info
- os_major,
- os_minor,
- os_patch,
-
- bool # Tells loader that the file holds a main function
- can_execute,
-
- ~void ({}{}char args) [int]
- # Address of main in file
- start_addr,
-
- {}IEX_SECTION
- sections,
-
- {}IEX_LIB
- dependencies,
-
- IEX_MODULE
- self
-}
-
-a section is defined as
-
-;struct IEX_SECTION {
- {}char
- name,
-
- uint8 # Denotes dependency, symbol table, data, bss, text, etc.
- type,
-
- ~void # Points to start and end of section
- start,
- end
-}
-
-;struct IEX_LIB {
- {}char
- name,
-
- uint8 # Version info
- major,
- minor,
- patch
-}
-
-;struct IEX_MODULE {
- {}char
- name,
-
- {}IEX_FUNCTION
- func,
-
- {}IEX_TYPE
- types,
-
- {}IEX_MODULE
- sub
-}
-
-;struct IEX_FUNCTION {
- {}char
- name,
-
- uint32
- overload,
- bytes_in,
- bytes_out,
-
- ~void
- addr
-}
-
-;struct IEX_TYPE {
- {}char
- name,
-
- bool
- raw_struct,
- interface,
- dynamic,
-
- uint32
- size,
-
- {}IEX_FUNCTION
- methods,
-
- {}IEX_TYPE
- supers,
-
- ~void
- addr
-}