Tools for working with Cidco Mailstations
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

README: update for teensy loader

authored by

joshua stein and committed by
GitHub
b1f8e9e3 5b832a71

+62 -12
+62 -12
README.md
··· 29 29 30 30 See [loader.txt](docs/loader.txt) for a more thorough explanation. 31 31 32 - tl;dr: 33 - 34 - - Obtain a DB25 parallel Laplink cable. Be sure to verify the pin-out as it is 35 - not a straight-through DB25 modem or printer cable. 32 + - Connect a Teensy loader or Laplink parallel port cable to the DB25 port on 33 + the Mailstation. 36 34 37 35 - With the Mailstation off, hold down the `Function`+`Shift`+`T` keys and press 38 36 the `Power` button to turn it on. Instead of booting up to the Cidco logo, ··· 58 56 59 57 ### Parallel port access 60 58 61 - Host tools (`sendload`, `recvdump`, and `tribble_getty`) need direct access 62 - to the parallel port to communicate with the Mailstation over the Laplink 63 - cable using `inb` and `outb` system calls. 59 + A DB25 LapLink parallel port cable is required for this method of connection. 60 + 64 61 A USB IEEE 1284 printer cable will *NOT* work, though a PCI parallel port card 65 62 will (including via a Thunderbolt enclosure if on a laptop). 66 63 If you are using a parallel port other than the standard port of `0x378`, 67 64 supply the `-p <port>` option to the host programs with the port in 68 65 hexadecimal. 69 66 67 + When connecting to the Mailstation via parallel port, host tools 68 + (`sendload`, `recvdump`, and `tribble_getty`) need direct access 69 + to the port to communicate with the Mailstation over the Laplink 70 + cable using `inb` and `outb` system calls. 71 + 70 72 On OpenBSD, direct port access will require the `machdep.allowaperture` sysctl 71 73 set to `1` or higher. On OpenBSD and Linux, these host tools will also have 72 74 to be executed as root. 73 75 74 - ### Included tools 76 + ### USB Loader with Teensy 77 + 78 + If you don't have a computer with a parallel port, you can use a 79 + [Teensy 3.2](https://www.pjrc.com/store/teensy32.html) 80 + which will connect to your computer via USB, and to the Mailstation via its 81 + many digital I/O pins: 82 + 83 + |Teensy Pin|Mailstation Pin| 84 + |----------|---------------| 85 + |1|2| 86 + |2|3| 87 + |3|4| 88 + |4|5| 89 + |5|6| 90 + |7|10| 91 + |8|11| 92 + |9|12| 93 + |10|13| 94 + |11|15| 95 + |GND|25| 96 + 97 + - Install [Arduino-Makefile](https://github.com/sudar/Arduino-Makefile) and 98 + [Teensyduino](https://www.pjrc.com/teensy/teensyduino.html) 99 + 100 + - `cd teensy-loader && make` (`gmake` on OpenBSD) 101 + 102 + - Upload `build-*/teensy-loader_.hex` firmware with `teensyloader` and Teensy 103 + will reattach as a USB serial device: 104 + 105 + ```` 106 + umodem0 at uhub0 port 4 configuration 1 interface 0 "jcs Mailstation Loader" rev 1.10/2.75 addr 9 107 + ucom0 at umodem0 108 + ```` 109 + 110 + ### Included host-side tools in `util/` 111 + 112 + #### `sendload` 113 + 114 + Writes a binary program file through the parallel port or USB serial port in 115 + the Mailstation's "tribble" format, sending each byte 3 bits at a time. 116 + 117 + #### `recvdump` 118 + 119 + Receives a dump from `codedump`, `datadump`, and `memdump` programs executed 120 + on the Mailstation and writes the bytes received to `codedump.bin`, 121 + `datadump.bin`, or `memdump.bin`. 122 + 123 + ### Included Mailstation Z80 tools 75 124 76 125 #### `loader.asm` 77 126 78 - Loader is used to load binary code over the Laplink cable into RAM and then 127 + Loader is used to load binary code over the parallel port into RAM and then 79 128 execute it. 80 129 81 130 You need to type the hex values of `z80/loader.bin` (tip: use `hexdump -C ··· 83 132 the new Loader app on the Mailstation. 84 133 85 134 Then run `obj/sendload <your binary file>` to send your binary code over the 86 - Laplink cable and it will be executed as soon as the transfer is done. 135 + parallel port and it will be executed on the Mailstation as soon as the 136 + transfer is done. 87 137 88 138 #### `codedump.asm` 89 139 90 140 Code Dump is used to read the contents of the 1Mb flash chip containing the 91 - Mailstation's code and send it over the Laplink cable. 141 + Mailstation's code and send it over the parallel port. 92 142 93 143 You need to type the hex values of `z80/codedump.bin` into one of the 94 144 application slots as detailed above. ··· 103 153 104 154 Data Dump is used to read the contents of the 512Kb flash chip containing the 105 155 Mailstation's data area (containing downloaded programs, e-mails, etc.) and 106 - send it over the Laplink cable. 156 + send it over the parallel port. 107 157 108 158 You need to type the hex values of `z80/datadump.bin` into one of the 109 159 application slots as detailed above.