mirror of
https://github.com/ParkerTenBroeck/ParkerTenBroeck.github.io.git
synced 2026-06-06 21:14:06 -04:00
more 88x31, mycpu stuff
This commit is contained in:
parent
3642db6709
commit
bd7eaeec38
10 changed files with 125 additions and 10 deletions
|
|
@ -22,4 +22,6 @@ public static Future<Void, IOException> echo(@Cancellation("close") Socket socke
|
|||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
```
|
||||
|
||||
Java (and other languages which compile for the JVM) operate on a
|
||||
|
|
@ -9,3 +9,88 @@ category = ["project"]
|
|||
+++
|
||||
|
||||
Take a look at the [GitHub](https://github.com/ParkerTenBroeck/MyCPU_16bit)
|
||||
|
||||
| Instruction | Opcode | Micro 1 | Micro 2 | Micro 3 | Micro 4 | Micro 5 | Micro 6 | Micro 7 |
|
||||
| ----------------------------------------- | ------ | ------- | ------- | ------- | ------- | ------- | ------- | ------- |
|
||||
| HALT | FF | 3000 | 1044000 | | | | | |
|
||||
| HALT if A = B | F0 | 3000 | 1044000 | | | | | |
|
||||
| HALT if A < B | F1 | 3000 | 1044000 | | | | | |
|
||||
| HALT if A >B | F2 | 3000 | 1044000 | | | | | |
|
||||
| Direct CPU control | F3 | 3000 | 1044000 | | | | | |
|
||||
| Direct Memory control | F4 | 3000 | 1044000 | | | | | |
|
||||
| Memory __ position out to X register | E0 | 3000 | 1044000 | 30000 | 14000 | 44008 | 800000 | |
|
||||
| Memory __ position out to Y register | E1 | 3000 | 1044000 | 30000 | 14000 | 44020 | 800000 | |
|
||||
| Memory __ position out to B register | E2 | 3000 | 1044000 | 30000 | 14000 | 44200 | 800000 | |
|
||||
| Memory __ position out to A register | E3 | 3000 | 1044000 | 30000 | 14000 | 44080 | 800000 | |
|
||||
| Memory __ position in from X register | E4 | 3000 | 1044000 | 30000 | 14000 | 48010 | 800000 | |
|
||||
| Memory __ position in from Y register | E5 | 3000 | 1044000 | 30000 | 14000 | 48040 | 800000 | |
|
||||
| Memory __ position in from B register | E6 | 3000 | 1044000 | 30000 | 14000 | 48400 | 800000 | |
|
||||
| Memory __ position in from A register | E7 | 3000 | 1044000 | 30000 | 14000 | 48100 | 800000 | |
|
||||
| Letter write | E8 | 3000 | 1044000 | 2004000 | 800000 | | | |
|
||||
| Memory __ __ position out to X register | E9 | 3000 | 1044000 | 30000 | 14000 | 14000 | 44008 | 800000 |
|
||||
| Memory __ __ position out to B register | EA | 3000 | 1044000 | 30000 | 14000 | 14000 | 44200 | 800000 |
|
||||
| Memory __ __ position out to A register | EB | 3000 | 1044000 | 30000 | 14000 | 14000 | 44080 | 800000 |
|
||||
| Memory __ __ position in from X register | EC | 3000 | 1044000 | 30000 | 14000 | 14000 | 48010 | 800000 |
|
||||
| Memory __ __ position in from B register | ED | 3000 | 1044000 | 30000 | 14000 | 14000 | 48400 | 800000 |
|
||||
| Memory __ __ position in from A register | EE | 3000 | 1044000 | 30000 | 14000 | 14000 | 48100 | 800000 |
|
||||
| Copy Memory __ to __ | EF | 3000 | 1044000 | | | | | |
|
||||
| A register out to internal screen | D0 | 3000 | 1044000 | 1080 | 800000 | | | |
|
||||
| X register out to internal screen | D1 | 3000 | 1044000 | 2010 | 800000 | | | |
|
||||
| Y register out to internal screen | D2 | 3000 | 1044000 | 2040 | 800000 | | | |
|
||||
| Memory out to internal screen | D3 | 3000 | 1044000 | 30000 | 54000 | 6000 | | |
|
||||
| ALU | N/A | | | | | | | |
|
||||
| Addition to A register | C0 | 3000 | 1044000 | 81 | 800000 | | | |
|
||||
| Subtraction to A register | C1 | 3000 | 1044000 | 82 | 800000 | | | |
|
||||
| NOT | C2 | 3000 | 1044000 | 83 | 800000 | | | |
|
||||
| AND | C3 | 3000 | 1044000 | 84 | 800000 | | | |
|
||||
| Shift Left to A register | C4 | 3000 | 1044000 | 85 | 800000 | | | |
|
||||
| Shift Right to A register | C5 | 3000 | 1044000 | 86 | 800000 | | | |
|
||||
| OR | C6 | 3000 | 1044000 | 87 | 800000 | | | |
|
||||
| Jump and remember position | B0 | 3000 | 1044000 | 30000 | 60800 | 84000 | 800000 | |
|
||||
| Jump and remember position if A < B | B1 | 3000 | 1044000 | | | | | |
|
||||
| Jump and remember position if A > B | B2 | 3000 | 1044000 | | | | | |
|
||||
| Jump and remember position if A = B | B3 | 3000 | 1044000 | | | | | |
|
||||
| Jump to jump Register | B4 | 3000 | 1044000 | 81000 | 800000 | | | |
|
||||
| Jump | A0 | 3000 | 1044000 | 30000 | 84000 | 800000 | | |
|
||||
| Jump if carry = 1 | A1 | 3000 | 1044000 | | | | | |
|
||||
| Jump if A = B | A2 | 3000 | 1044000 | 330000 | 384000 | B00000 | | |
|
||||
| Jump if A < B | A3 | 3000 | 1044000 | | | | | |
|
||||
| Jump if A > B | A4 | 3000 | 1044000 | 230000 | 284000 | A00000 | | |
|
||||
| Jump to A register | A5 | 3000 | 1044000 | 80100 | 800000 | | | |
|
||||
| No Operation | 00 | 30000 | 1044000 | 800000 | | | | |
|
||||
|
||||
|
||||
| Bit | Function |
|
||||
| --- | --- |
|
||||
| 31 | NA |
|
||||
| 30 | NA |
|
||||
| 29 | NA |
|
||||
| 28 | NA |
|
||||
| 27 | NA |
|
||||
| 26 | NA |
|
||||
| 25 | NA |
|
||||
| 24 | Instruction Register In |
|
||||
| 23 | Micro Instruction Counter Reset |
|
||||
| 22 | Conditional Instruction Type Select Bit 3 |
|
||||
| 21 | Conditional Instruction Type Select Bit 2 |
|
||||
| 20 | Conditional Instruction Type Select Bit 1 |
|
||||
| 19 | Program Counter In |
|
||||
| 18 | Program Counter Count |
|
||||
| 17 | Program Counter Out |
|
||||
| 16 | Update Memory Address Register |
|
||||
| 15 | Memory In |
|
||||
| 14 | Memory Out |
|
||||
| 13 | Internal Screen Register In |
|
||||
| 12 | Jump Register Out |
|
||||
| 11 | Jump Register In |
|
||||
| 10 | B Register Out |
|
||||
| 9 | B Register In |
|
||||
| 8 | A Register Out |
|
||||
| 7 | A Register In |
|
||||
| 6 | Y Register Out |
|
||||
| 5 | Y Register In |
|
||||
| 4 | X Register Out |
|
||||
| 3 | X Register In |
|
||||
| 2 | ALU mode select bit 3 |
|
||||
| 1 | ALU mode select bit 2 |
|
||||
| 0 | ALU mode select bit 1 |
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ I decided to make a 88x31 badge for fun and included a fun little puzzle inside
|
|||
|
||||
Here are some badges from people I know/like
|
||||
|
||||
{{ badge88x31(link="https://ivytime.gay", src="https://ivytime.gay/badges/ivytime.gay.png", alt="Ivy's badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://ivytime.gay", src="ivytime.gay.png", alt="Ivy's badge", new_tab=true) }}
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -27,6 +27,9 @@ other
|
|||
{{ badge88x31(link="https://rust-lang.org/", src="rustnow.gif", alt="Rust badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://www.w3.org/QA/Tips/iso-date", src="iso-date.gif", alt="ISO 8601 badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://www.aperturescience.com/", src="aperturelabs.gif", alt="Aperture Labs badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://archive.org/", src="preserve.png", alt="Preserve badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://ublockorigin.com/", src="ublock.png", alt="UBlock badge", new_tab=true) }}
|
||||
{{ badge88x31(link="https://wikipedia.org/", src="wikipedia.gif", alt="Wikipedia badge", new_tab=true) }}
|
||||
{{ badge88x31(src="niko-chuckle.gif", alt="Niko Chuckle Viewed badge") }}
|
||||
{{ badge88x31(src="bestviewed.gif", alt="Best Viewed badge") }}
|
||||
{{ badge88x31(src="roroqa.gif", alt="Rendered On RISC OS badge") }}
|
||||
|
|
|
|||
BIN
content/random/88x31/ivytime.gay.png
Normal file
BIN
content/random/88x31/ivytime.gay.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.6 KiB |
BIN
content/random/88x31/preserve.png
Normal file
BIN
content/random/88x31/preserve.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 895 B |
BIN
content/random/88x31/ublock.png
Normal file
BIN
content/random/88x31/ublock.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
BIN
content/random/88x31/wikipedia.gif
Normal file
BIN
content/random/88x31/wikipedia.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
Loading…
Add table
Add a link
Reference in a new issue