Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/synthead/timex-datalink-assembler
Toebes' Timex Datalink WristApp assembler wrapped in a Docker image with Wine
https://github.com/synthead/timex-datalink-assembler
150 150s 6800 6805 assembler compiler data data-link datalink docker link timex toebes wine wristapp
Last synced: about 1 month ago
JSON representation
Toebes' Timex Datalink WristApp assembler wrapped in a Docker image with Wine
- Host: GitHub
- URL: https://github.com/synthead/timex-datalink-assembler
- Owner: synthead
- Created: 2023-07-14T01:58:29.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-16T10:20:32.000Z (over 1 year ago)
- Last Synced: 2024-11-05T10:18:46.470Z (3 months ago)
- Topics: 150, 150s, 6800, 6805, assembler, compiler, data, data-link, datalink, docker, link, timex, toebes, wine, wristapp
- Language: Shell
- Homepage:
- Size: 46.9 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Docker image for Toebes' Timex Datalink assembler
This repo wraps Toebes' excellent Timex Datalink assembler for the Datalink 150 and 150s in a Docker image with Wine!
Paired with a helper script called `asm6805`, this Win32 program from 1997 is now presented as a platform-agnostic CLI
experience:```shell
$ asm6805 01_hello.zsm 01_hello.zap
Assembling 150 Version...
Assembling 150S Version...
Assembly successful: Code=97 Bytes
```## Usage
Here is the usage page for `asm6805`:
```
Usage: asm6805 ASSEMBLY_FILE [OUTPUT_FILE]
Assemble a WristApp or sound scheme for the Timex Datalink 150 and 150s.ASSEMBLY_FILE is a path to a ZSM assembly file.
OUTPUT_FILE is a path to write the ZAP or SPC file (defaults to out.zap or out.spc).ZSM format documentation:
```## System requirements
The `asm6805` script will build a Docker image on its first run, and whenever it needs to build an updated image. Docker
must be installed and running with a connection to the internet to build the image.If you need to install Docker, you can get it [here](https://docs.docker.com/get-docker).
## Uploading with timex\_datalink\_client
The assembled ZAP files can be synced to your Timex Datalink watch using the
[timex\_datalink\_client Ruby library](https://github.com/synthead/timex_datalink_client) with a Notebook Adapter like
so:```ruby
require "timex_datalink_client"models = [
# For the Timex Datalink 150s, use TimexDatalinkClient::Protocol4 instead.TimexDatalinkClient::Protocol3::Sync.new,
TimexDatalinkClient::Protocol3::Start.new,TimexDatalinkClient::Protocol3::WristApp.new(zap_file: "my_wristapp.zap"),
TimexDatalinkClient::Protocol3::End.new
]timex_datalink_client = TimexDatalinkClient.new(
serial_device: "/dev/ttyACM0",
models: models,
verbose: true
)timex_datalink_client.write
```For more information on how to use timex\_datalink\_client, see the following links:
- [timex\_datalink\_client README](https://github.com/synthead/timex_datalink_client/tree/main#readme)
- [Protocol 3 for the Timex Datalink 150](https://github.com/synthead/timex_datalink_client/blob/main/docs/timex_datalink_protocol_3.md)
- [Protocol 4 for the Timex Datalink 150s](https://github.com/synthead/timex_datalink_client/blob/main/docs/timex_datalink_protocol_4.md)If you don't have a Timex Notebook Adapter, you can create a 100% compatible one using an Arduino board with
[timex-datalink-arduino](https://github.com/synthead/timex-datalink-arduino). If you'd like to sync your watch with a
CRT, see [timex\_datalink\_crt](https://github.com/synthead/timex_datalink_crt).## Toebes' excellent assembler and tutorial
The Dockerfile and `asm6805` wraps the excellent VAsm6805.exe assembler and the very thoughtful header files written by
John A. Toebes, VIII. Toebes' website contains a wealth of knowledge, excellent tools, great tutorials, and
documentation of inspirational quality. If you are interested in learning about how to write WristApps for your Timex
Datalink 150 or 150s, you should definitely visit [Toebes' Datalink site](https://toebes.com/Datalink)!