Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrcook/retroio
CLI utility for reading 8-bit emulator disk and tape images (ZX Spectrum, C64, Amstrad)
https://github.com/mrcook/retroio
8-bit 8bit amstrad c64 cli commodore d64 emulators go golang retro spectrum tzx zx-spectrum
Last synced: 2 months ago
JSON representation
CLI utility for reading 8-bit emulator disk and tape images (ZX Spectrum, C64, Amstrad)
- Host: GitHub
- URL: https://github.com/mrcook/retroio
- Owner: mrcook
- License: mit
- Created: 2018-03-05T22:02:53.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2022-09-12T19:19:00.000Z (over 2 years ago)
- Last Synced: 2024-06-20T01:59:49.277Z (8 months ago)
- Topics: 8-bit, 8bit, amstrad, c64, cli, commodore, d64, emulators, go, golang, retro, spectrum, tzx, zx-spectrum
- Language: Go
- Homepage:
- Size: 460 KB
- Stars: 14
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RetroIO (rio)
A command-line utility written in the Go programming language for working
with disk and cassette tape files used by emulators of home computers from
the 1980s.One example would be `tzx` tapes from the ZX Spectrum 8-bit home computer.
## Supported Media and Commands
### Directory Command
* Amstrad: `DSK`
* Commodore 64: `D64`, `D71`, `D81`The `dir` command reads a disk and prints the directory listing to the terminal.
Any hidden/scratch files will also be displayed.```sh
$ rio c64 dir super-mario-bros64.d64LOAD"$",8
SEARCHING FOR $
LOADING
READY.
LIST0 "SUPER MARIO BROS" . 4
192 "SUPER M. BROS.64" PRG
59 "SMB.64 DOCS" PRG
0 " " DEL
0 " ¦¦¦¦¦ " DEL
0 " ¦¦¦¦¦¦¦¦¦ " DEL
0 " ---vv-v " DEL
0 " -v-vvv-vvv " DEL
0 " -v--vvv-vvv " DEL
0 " --vvvv---- " DEL
0 " vvvvvvv " DEL
0 " --¦--- " DEL
0 " ---¦--¦--- " DEL
0 " ----¦¦¦¦---- " DEL
0 " vv-¦v¦¦v¦-vv " DEL
0 " vvv¦¦¦¦¦¦vvv " DEL
0 " vv¦¦¦¦¦¦¦¦vv " DEL
0 " ¦¦¦ ¦¦¦ " DEL
0 " --- --- " DEL
0 " ---- ---- " DEL
0 " " DEL
428 BLOCKS FREE.
```### Geometry Command
* Amstrad: `DSK`, `CDT`
* Commodore 64: `D64`, `D71`, `D81`, `T64`, `TAP`
* ZX Spectrum: `TZX`, `TAP`, `TRD`The `geometry` command will read and display core metadata about the layout
of the media. This can be disk track and sector details, or the header and
block information from a cassette tape.```sh
$ rio spectrum geometry skool-daze.tzxTZX processing complete!
ARCHIVE INFORMATION:
Title : Skool Daze
Publisher : Microsphere
Authors : David S. Reidy, Keith Warrington
Year : 1984
Loader : Microsphere
Comment : Timing corrected by Mikie.DATA BLOCKS:
#1 Standard Speed Data : 19 bytes, pause for 970 ms.
- Header : BASIC Program
- Filename : skooldaze
- AutoStartLine: 0
#2 Standard Speed Data : 333 bytes, pause for 5981 ms.
- Standard Data: 331 bytes
#3 Turbo Speed Data : 82109 bytes, pause for 0 ms.TZX revision: 1.10
```### Read Command
* ZX Spectrum: `TZX` and `TAP`
The `read` command will read data contained on the media.
At present only printing of `BASIC` programs is supported. Simply add the `--bas`
flag when `read`ing the media image._Please note that decoding is currently experimental and the output may not be
considered valid BASIC, and may even be garbled or missing completely._```sh
$ rio spectrum read --bas manic-miner.tzxBASIC PROGRAMS:
BLK#02: ManicMiner
10 CLEAR 30000
20 PAPER 0: BORDER 0: INK 0: CLS : LOAD ""CODE : LOAD ""CODE
30 RANDOMIZE USR 33792
```## Installation
$ go get -u -v github.com/mrcook/retroio/...
To install the app after manually cloning the repository you must first change to the `rio` directory:
$ cd retroio/rio
$ go install## Usage
$ rio help
To display a list of commands
Note: the correct media type will be set for the requested system based
on the file extension, however this can be overridden with the `--media` flag.## LICENSE
Copyright (c) 2018-2020 Michael R. Cook. All rights reserved.
This work is licensed under the terms of the MIT license.
For a copy, see .