Initial commit

This commit is contained in:
2025-10-06 00:14:04 -04:00
commit d98bdabb74
553 changed files with 32764 additions and 0 deletions

View File

@@ -0,0 +1 @@
Failed to read file

View File

@@ -0,0 +1 @@
Failed to read file

View File

@@ -0,0 +1 @@
Failed to read file

View File

@@ -0,0 +1 @@
Failed to read file

View File

@@ -0,0 +1 @@
Failed to read file

View File

@@ -0,0 +1,6 @@
Disassembly of data contents:
0x200: | .pos 0x200 data
0x200: 88 77 66 55 44 33 22 11 | .quad 0x1122334455667788
0x208: 78 56 34 12 00 00 00 00 | .quad 0x12345678
0x210: 42 00 00 00 00 00 00 00 | .quad 0x42

View File

@@ -0,0 +1,5 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 00 | halt

View File

@@ -0,0 +1,11 @@
Usage: ../y86 <option(s)> mini-elf-file
Options are:
-h Display usage
-H Show the Mini-ELF header
-a Show all with brief memory
-f Show all with full memory
-s Show the program headers
-m Show the memory contents (brief)
-M Show the memory contents (full)
-d Disassemble code contents
-D Disassemble data contents

View File

@@ -0,0 +1,22 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 00 | halt
0x400: | .pos 0x400 code
0x400: 10 | nop
0x401: 00 | halt
Disassembly of data contents:
0x200: | .pos 0x200 data
0x200: 10 00 00 00 00 00 00 00 | .quad 0x10
0x300: | .pos 0x300 rodata
0x300: 74 65 73 74 00 | .string "test"
0x500: | .pos 0x500 data
0x500: 78 56 34 12 00 00 00 00 | .quad 0x12345678
0x600: | .pos 0x600 rodata
0x600: 61 67 61 69 6e 00 | .string "again"

View File

@@ -0,0 +1,6 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 30 f3 0f 00 00 00 20 31 40 13 | irmovq 0x134031200000000f, %rbx
Invalid opcode: 0xfd

View File

@@ -0,0 +1,11 @@
Usage: ../y86 <option(s)> mini-elf-file
Options are:
-h Display usage
-H Show the Mini-ELF header
-a Show all with brief memory
-f Show all with full memory
-s Show the program headers
-m Show the memory contents (brief)
-M Show the memory contents (full)
-d Disassemble code contents
-D Disassemble data contents

View File

@@ -0,0 +1,4 @@
Disassembly of data contents:
0x200: | .pos 0x200 rodata
0x200: 68 65 6c 6c 6f 00 | .string "hello"

View File

@@ -0,0 +1,5 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 00 | halt

View File

@@ -0,0 +1,10 @@
Disassembly of data contents:
0x200: | .pos 0x200 rodata
0x200: 30 31 32 33 34 35 36 37 38 39 | .string "0123456789"
0x20a: 00 |
0x20b: 68 65 6c 6c 6f 20 77 6f 72 6c | .string "hello world"
0x215: 64 00 |
0x217: 61 62 63 64 65 66 67 68 69 6a | .string "abcdefghijklmnopqrstuvwxyz"
0x221: 6b 6c 6d 6e 6f 70 71 72 73 74 |
0x22b: 75 76 77 78 79 7a 00 |

View File

@@ -0,0 +1,6 @@
Disassembly of data contents:
0x200: | .pos 0x200 rodata
0x200: 66 6f 6f 00 | .string "foo"
0x204: 77 30 30 74 00 | .string "w00t"
0x209: 75 70 20 64 6f 77 6e 00 | .string "up down"

View File

@@ -0,0 +1,20 @@
Disassembly of data contents:
0x200: | .pos 0x200 rodata
0x200: 54 6f 20 62 65 2c 20 6f 72 20 | .string "To be, or not to be: that is the question"
0x20a: 6e 6f 74 20 74 6f 20 62 65 3a |
0x214: 20 74 68 61 74 20 69 73 20 74 |
0x21e: 68 65 20 71 75 65 73 74 69 6f |
0x228: 6e 00 |
0x22a: 57 68 61 74 27 73 20 69 6e 20 | .string "What's in a name? A rose by any other name would smell as sweet."
0x234: 61 20 6e 61 6d 65 3f 20 41 20 |
0x23e: 72 6f 73 65 20 62 79 20 61 6e |
0x248: 79 20 6f 74 68 65 72 20 6e 61 |
0x252: 6d 65 20 77 6f 75 6c 64 20 73 |
0x25c: 6d 65 6c 6c 20 61 73 20 73 77 |
0x266: 65 65 74 2e 00 |
0x26b: 42 75 74 2c 20 66 6f 72 20 6d | .string "But, for my own part, it was Greek to me."
0x275: 79 20 6f 77 6e 20 70 61 72 74 |
0x27f: 2c 20 69 74 20 77 61 73 20 47 |
0x289: 72 65 65 6b 20 74 6f 20 6d 65 |
0x293: 2e 00 |

View File

@@ -0,0 +1,26 @@
01 00 18 01 10 00 03 00 00 00 00 00 45 4c 46 00
Mini-ELF version 1
Entry point 0x118
There are 3 program headers, starting at offset 16 (0x10)
There is no symbol table present
There is no string table present
Segment Offset Size VirtAddr Type Flags
00 0x004c 0x0009 0x0000 CODE R X
01 0x0055 0x0002 0x0118 CODE R X
02 0x0057 0x0008 0x013a DATA RW
Contents of memory from 0000 to 0009:
0000 70 18 01 00 00 00 00 00 00
Contents of memory from 0118 to 011a:
0110 10 00
Contents of memory from 013a to 0142:
0130 39 30 00 00 00 00
0140 00 00
Disassembly of executable contents:
0x000: | .pos 0x000 code
0x000: 70 18 01 00 00 00 00 00 00 | jmp 0x118
0x118: | .pos 0x118 code
0x118: | _start:
0x118: 10 | nop
0x119: 00 | halt

View File

@@ -0,0 +1,29 @@
01 00 55 05 10 00 03 00 00 00 00 00 45 4c 46 00
Mini-ELF version 1
Entry point 0x555
There are 3 program headers, starting at offset 16 (0x10)
There is no symbol table present
There is no string table present
Segment Offset Size VirtAddr Type Flags
00 0x004c 0x0009 0x0000 CODE R X
01 0x0055 0x001f 0x0555 CODE R X
02 0x0074 0x0008 0x0987 DATA RW
Contents of memory from 0000 to 0009:
0000 70 55 05 00 00 00 00 00 00
Contents of memory from 0555 to 0574:
0550 30 f0 4d 01 00 00 00 00 00 00 30
0560 f3 de 00 00 00 00 00 00 00 30 f1 6f 00 00 00 00
0570 00 00 00 00
Contents of memory from 0987 to 098f:
0980 dd cc bb aa 00 00 00 00
Disassembly of executable contents:
0x000: | .pos 0x000 code
0x000: 70 55 05 00 00 00 00 00 00 | jmp 0x555
0x555: | .pos 0x555 code
0x555: | _start:
0x555: 30 f0 4d 01 00 00 00 00 00 00 | irmovq 0x14d, %rax
0x55f: 30 f3 de 00 00 00 00 00 00 00 | irmovq 0xde, %rbx
0x569: 30 f1 6f 00 00 00 00 00 00 00 | irmovq 0x6f, %rcx
0x573: 00 | halt

View File

@@ -0,0 +1,10 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: c0 | iotrap 0
0x101: c1 | iotrap 1
0x102: c2 | iotrap 2
0x103: c3 | iotrap 3
0x104: c4 | iotrap 4
0x105: c5 | iotrap 5

View File

@@ -0,0 +1,11 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 70 88 77 66 55 44 33 22 11 | jmp 0x1122334455667788
0x109: 71 77 66 55 44 33 22 11 88 | jle 0x8811223344556677
0x112: 72 66 55 44 33 22 11 88 77 | jl 0x7788112233445566
0x11b: 73 55 44 33 22 11 88 77 66 | je 0x6677881122334455
0x124: 74 44 33 22 11 88 77 66 55 | jne 0x5566778811223344
0x12d: 75 33 22 11 88 77 66 55 44 | jge 0x4455667788112233
0x136: 76 22 11 88 77 66 55 44 33 | jg 0x3344556677881122

View File

@@ -0,0 +1,6 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 70 88 77 66 55 44 33 22 11 | jmp 0x1122334455667788
0x109: 80 11 22 33 44 55 66 77 88 | call 0x8877665544332211

View File

@@ -0,0 +1,19 @@
01 00 00 01 10 00 01 00 00 00 00 00 45 4c 46 00
Mini-ELF version 1
Entry point 0x100
There are 1 program headers, starting at offset 16 (0x10)
There is no symbol table present
There is no string table present
Segment Offset Size VirtAddr Type Flags
00 0x0024 0x0017 0x0100 CODE R X
Contents of memory from 0100 to 0117:
0100 30 f0 68 24 00 00 00 00 00 00 30 f3 34 12 00 00
0110 00 00 00 00 60 03 00
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 30 f0 68 24 00 00 00 00 00 00 | irmovq 0x2468, %rax
0x10a: 30 f3 34 12 00 00 00 00 00 00 | irmovq 0x1234, %rbx
0x114: 60 03 | addq %rax, %rbx
0x116: 00 | halt

View File

@@ -0,0 +1,17 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: 10 | nop
0x101: 10 | nop
0x102: 10 | nop
0x103: | _start:
0x103: 30 f0 68 24 00 00 00 00 00 00 | irmovq 0x2468, %rax
0x10d: 30 f3 34 12 00 00 00 00 00 00 | irmovq 0x1234, %rbx
0x117: 60 03 | addq %rax, %rbx
0x119: 70 00 02 00 00 00 00 00 00 | jmp 0x200
0x200: | .pos 0x200 code
0x200: 30 f1 78 56 00 00 00 00 00 00 | irmovq 0x5678, %rcx
0x20a: 30 f2 14 15 00 00 00 00 00 00 | irmovq 0x1514, %rdx
0x214: 61 21 | subq %rdx, %rcx
0x216: 00 | halt

View File

@@ -0,0 +1,9 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 30 f0 88 77 66 55 44 33 22 11 | irmovq 0x1122334455667788, %rax
0x10a: 40 12 21 43 65 87 78 56 34 12 | rmmovq %rcx, 0x1234567887654321(%rdx)
0x114: 50 12 78 56 34 12 21 43 65 87 | mrmovq 0x8765432112345678(%rdx), %rcx
0x11e: 40 1f 21 43 65 87 78 56 34 12 | rmmovq %rcx, 0x1234567887654321
0x128: 50 1f 78 56 34 12 21 43 65 87 | mrmovq 0x8765432112345678, %rcx

View File

@@ -0,0 +1,11 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 20 01 | rrmovq %rax, %rcx
0x102: 21 23 | cmovle %rdx, %rbx
0x104: 22 45 | cmovl %rsp, %rbp
0x106: 23 67 | cmove %rsi, %rdi
0x108: 24 89 | cmovne %r8, %r9
0x10a: 25 ab | cmovge %r10, %r11
0x10c: 26 ce | cmovg %r12, %r14

View File

@@ -0,0 +1,11 @@
Usage: ../y86 <option(s)> mini-elf-file
Options are:
-h Display usage
-H Show the Mini-ELF header
-a Show all with brief memory
-f Show all with full memory
-s Show the program headers
-m Show the memory contents (brief)
-M Show the memory contents (full)
-d Disassemble code contents
-D Disassemble data contents

View File

@@ -0,0 +1,8 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 60 23 | addq %rdx, %rbx
0x102: 61 01 | subq %rax, %rcx
0x104: 62 45 | andq %rsp, %rbp
0x106: 63 67 | xorq %rsi, %rdi

View File

@@ -0,0 +1,8 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 20 01 | rrmovq %rax, %rcx
0x102: 60 23 | addq %rdx, %rbx
0x104: a0 6f | pushq %rsi
0x106: b0 7f | popq %rdi

View File

@@ -0,0 +1,7 @@
Disassembly of executable contents:
0x100: | .pos 0x100 code
0x100: | _start:
0x100: 00 | halt
0x101: 10 | nop
0x102: 90 | ret