Updated Hardware: Com Port (markdown)

Simon Fortier 2017-12-30 21:27:25 -05:00
parent 6102fdb1ed
commit ed667a2dd6
2 changed files with 18 additions and 15 deletions

@ -1,15 +0,0 @@
NOTE: This is based off of a quick reading of the source code. YMMV - mlaga97
### Specifications
Manufacturer: Apachicorp
Version: ????
Default address: `0x000D`
Hardware ID: `0x000D`
### Interrupt Behavior
| Value of A | Action | Energy cost | Result |
| --- | --- | --- | --- |
| `0` | `SELF_CLEAR` | `0 kJ` | Clear the console output |
| `1` | `POLL` | `4 kJ` | Read all messages in the console buffer to memory at X, sets B to the number of messages |
| `2` | `FRONT_PORT_OUT` | `20 kJ` | Copies 8 words starting from the address in X to the object directly in front of the cubot |
| `3` | `SELF_OUT` | `1 kJ` | Copies 8 words starting from the address in X to the console output |

@ -0,0 +1,18 @@
The Universal Communication Port, or Com Port for short enables communication between machines and structures. This device is coupled to an internal message buffer, which can contain up to 40 words. The internal buffer is emptied into the console screen at the end of every tick.
### Specifications
Manufacturer: Apachicorp
Version: 1.1b
Default address: `0x000D`
Hardware ID: `0x000D`
### Interrupt Behavior
| Value of A | Action | Energy cost | Result |
| --- | --- | --- | --- |
| `0` | `SELF_CLEAR` | `0 kJ` | Clears the console screen and the internal message buffer. |
| `1` | `POLL` | `4 kJ` | Copy all internal buffer messages to memory at X, sets B to the number of messages copied |
| `2` | `FRONT_PORT_OUT` | `20 kJ` | Copies 8 words starting from the address in X to the object directly in front of the cubot if this object has a Universal Com Port as well. The B register is set if the operation succeeded, it is reset otherwise |
| `3` | `SELF_OUT` | `1 kJ` | Copies 8 words starting from the address in X to the internal message buffer. The B register is set if the operation succeeded, it is reset otherwise |
Note that a Cubot can send a message to another Cubot's internal buffer, which will be emptied into his console screen. Currently, the [Radio Tower](https://github.com/simon987/Much-Assembly-Required/wiki/Radio-Tower) is the only other object with a Com Port.