cardiograph-computer/2023-09-25.md

114 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2023-09-25 — Dev notes
## TODO
- [ ] Notes on possible architecture extensions to add support for a 16-bit IP
- [ ] add tape drive to mainframe
- review 8080 style io ports
- works bc they have 2 operands per instruction, i think
## Networking - first bits of research
- [Bus network](https://en.m.wikipedia.org/wiki/Bus_network)
- [Econet](https://en.m.wikipedia.org/wiki/Econet)
- [Telnet](https://en.wikipedia.org/wiki/Telnet)
- [Adding a serial port to my 6502 computer Mike's Software Blog](https://mike42.me/blog/2021-07-adding-a-serial-port-to-my-6502-computer)
- uxn networking — not helpful to me, i think
- https://github.com/klardotsh/uxnyap
- https://compudanzas.net/uxn_tutorial_day_7.html
- https://hacklab.nilfm.cc/xrxs/about/
## 6502 vectors
https://www.masswerk.at/6502/6502_instruction_set.html
> System Vectors
>
> $FFFA, $FFFB ... NMI (Non-Maskable Interrupt) vector, 16-bit (LB, HB)
> $FFFC, $FFFD ... RES (Reset) vector, 16-bit (LB, HB)
> $FFFE, $FFFF ... IRQ (Interrupt Request) vector, 16-bit (LB, HB)
## Docs leftovers: alternative table format for instructions
| lo ↓ / hi → | 0 (G0, M0) |
|-------------|------------|
| **0** | END |
| **1** | NOP |
| **2** | |
| **3** | |
| **4** | |
| **5** | |
| **6** | |
| **7** | |
| | |
| **8** | |
| **9** | |
| **A** | |
| **B** | |
| **C** | |
| **D** | |
| **E** | |
| **F** | |
| lo ↓ / hi → | 5 (G1, M1) | 6 (G1, M2) |
|-------------|------------|------------|
| **0** | LDA # | LDA ind |
| **1** | STO # | STO ind |
| **2** | ADD # | ADD ind |
| **3** | SUB # | SUB ind |
| **4** | JMP # | JMP ind |
| **5** | JEQ # | JEQ ind |
| **6** | JFL # | JFL ind |
| **7** | FTG # | FTG ind |
| | | |
| **8** | MUL # | MUL ind |
| **9** | DIV # | DIV ind |
| **A** | JLT # | JLT # |
| **B** | JGT # | JGT # |
| **C** | NOT # | NOT # |
| **D** | AND # | AND # |
| **E** | OR # | OR # |
| **F** | XOR # | XOR # |
| lo ↓ / hi → | 9 (G2, M1) | A (G2, M2) |
|-------------|------------|------------|
| **0** | DEV # | DEV ind |
| **1** | INP # | INP ind |
| **2** | OUT # | OUT ind |
| **3** | FED | FED |
| **4** | | |
| **5** | | |
| **6** | | |
| **7** | | |
| | | |
| **8** | | |
| **9** | | |
| **A** | | |
| **B** | | |
| **C** | | |
| **D** | | |
| **E** | | |
| **F** | | |
| lo ↓ / hi → | F (G3, M3) |
|-------------|------------|
| **0** | |
| **1** | |
| **2** | |
| **3** | |
| **4** | |
| **5** | |
| **6** | |
| **7** | |
| | |
| **8** | RSL A |
| **9** | RSR A |
| **A** | ASL A |
| **B** | ASR A |
| **C** | |
| **D** | |
| **E** | |
| **F** | |