Name | u64cmd JSON |
Version |
0.9.1
JSON |
| download |
home_page | |
Summary | A command line tool to remote control your Ultimate 64 or Ultimate II+ device. |
upload_time | 2023-02-01 20:37:15 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.7 |
license | BSD |
keywords |
c64
ultimate 64
ultimate ii+
ultimate 1541
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# u64cmd - Remote Control for your Ultimate 64/II+
This Python command line tools allows you to control your [Ultimate 64][1]/Ultimate II+
device via a TCP connection on port 64.
It implements almost the full feature set of the DMA Socket Protocol as
specified in the Ultimate64 [source code][2].
[1]: https://ultimate64.com
[2]: https://github.com/GideonZ/1541ultimate/blob/master/software/network/socket_dma.cc
## Feature Set
* Upload/Run PRG Files
* Upload REU Images
* Upload/Mount Disk Images
* Upload/Activate CRT Images
* Upload/Activate Kernel ROM Images
* Write Data Files to RAM
* POKE, POKEW
* Type Text with Petcat like Control Codes
* Reset/PowerOff Machine
* On Ultimate64: Enable/Disable VIC/Audio/Debug Stream
## Installation
* You need Python 3 >= Version 3.7 and Pip installed
* Install stable version
pip3 install u64cmd
* Install current Git version
pip3 install -U git+https://github.com/cnvogelg/u64cmd.git
## Run u64cmd
You run the command with this syntax:
u64cmd -h 192.168.2.1 reset
The `-h|--host` option is required to give the IP address or hostname of your
Ultimate 64/II+.
The above command triggers only the `reset` command and exits. You can also
specify multiple commands on the command line to execute them in a row:
u64cmd -h 192.168.2.1 reset load_reu blureu.img load_prg -r blureu.prg
## Command Description
### Main Options
Usage:
u64cmd [--host|-h <host_addr] [--port|-p <port_num>] <command> ...
* `--host|-h` gives the `host_addr` of the Ultime64/II+ (required). Use
environment variable `U64CMD_HOST` to set the value permanently.
* With `--port|-p` you can specify the port number. The default is `64`. Use
environment variable `U64CMD_PORT` to set the value permanently.
### More Main Options
* The option `--version` shows the release version of the tool.
* The option `--help` gives you a command overview.
* Use `... <command> --help` to get detailed help on a command
* The option `--dump-keycodes|-D` shows a list of known petcat control
commands for typing message (see `type` command)
### `type` - Type Text on C64 Keyboard
Usage:
type <text>
* Types the given `text`.
* You can pass control codes in the `{code}` notation (similar to `petcat`)
* Use the `--dump-keycodes|-D` command to get a list of all supported codes.
Example:
type "{clr}{wht}HELLO, WORLD!{lblu}{cr}"
### `prg_load` - Load (and Run) a PRG File
Usage:
prg_load [--run] [--jump] <prg_file>
* `prg_file` gives the name of the PRG file you want to DMA load
* add the `--run|-r` switch to automatically `RUN` the PRG after loading
* similar `--jump|-j` jumps to the load address of the PRG file
### `reu_load` - Load Data File into REU
Usage:
reu_load [--addr <addr>] [--offset <num>] [--size <num>] <reu_file>
* `reu_file` gives the file name to be uploaded into the REU
* `--addr|-a <addr>` defines the loading address.
* `--offset|-o <num>` sets an optional offset in the file. By default the
whole file starting at the first byte will be uploaded. With this command
you can skip bytes for the upload.
* `--size|-s <num>` limits the transfer. This allows you to reduce the
uploaded block. By default the whole file is transferred.
Note: You can specify any value in the tool either in decimal (e.g. `49152`)
or in hex (e.g. `0xc000`)
### `disk_load` - Load/Mount Disk Images
Usage:
disk_load [--run|-r] <disk_file>
* `disk_file` is a D64 disk image to be uploaded and mounted
* The optional `--run|-r` allows to automatically run the first file in the
image.
### `crt_load` - Load/Enable CRT Images
Usage:
crt_load <crt_file>
* Uploads the `crt_file` as current cartridge image and activates it.
### `kernal_load` - Load/Enable Kernal Image
Usage:
kernel_load <kernal_file>
* Upload the `kernal_file` as the new kernal ROM.
### `data_write` - Write data into RAM
Usage:
data_write [--addr <addr>] [--offset <num>] [--size <num>] <data_file>
* `data_file` gives the file name to be uploaded into C64 RAM
* `--addr|-a <addr>` defines the loading address. You can specify the value
in decimal (e.g. `49152`) or in hex (e.g. `0xc000`)
* `--offset|-o <num>` sets an optional offset in the file. By default the
whole file starting at the first byte will be uploaded. With this command
you can skip bytes for the upload.
* `--size|-s <num>` limits the transfer. This allows you to reduce the
uploaded block. By default the whole file is transferred.
### `poke` and `pokew` - Write values into C64 Memory
Usage:
poke <addr> <value>
pokew <addr> <value>
* poke a byte or a word `value` into memory at address `addr`
### `stream_on` - Enable VIC/Audio/Debug Streaming (U64 only)
Usage:
stream_on [--duration <num>] [--addr|-a <host_addr>] <stream_name>
* Valid stream names are `vic`, `audio`, or `debug`.
* The optional `--duration|-d <num>` allows to set the transfer duration. By
default the value is set to 0 meaning infinite duration.
* The optional `--addr|-a <host_addr` gives the host address where the stream
will be sent to. Typically a multicast address or your own host address.
### `stream_off` - Disable VIC/Audio/Debug Streaming (U64 only)
Usage:
stream_off <stream_name>
* Valid stream names are `vic`, `audio`, or `debug`.
### `reset` - Reset C64
Usage:
reset
### `poweroff` - Power Off C64 (U64 only)
Usage:
poweroff
EOF
Raw data
{
"_id": null,
"home_page": "",
"name": "u64cmd",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "C64,Ultimate 64,Ultimate II+,Ultimate 1541",
"author": "",
"author_email": "Christian Vogelgsang <chris@vogelgsang.org>",
"download_url": "https://files.pythonhosted.org/packages/3a/9d/2083e7347bcce364067243b0102242763830d5ab104ad6504fe9bc48dbc4/u64cmd-0.9.1.tar.gz",
"platform": null,
"description": "# u64cmd - Remote Control for your Ultimate 64/II+\n\nThis Python command line tools allows you to control your [Ultimate 64][1]/Ultimate II+\ndevice via a TCP connection on port 64.\n\nIt implements almost the full feature set of the DMA Socket Protocol as\nspecified in the Ultimate64 [source code][2].\n\n[1]: https://ultimate64.com\n[2]: https://github.com/GideonZ/1541ultimate/blob/master/software/network/socket_dma.cc\n\n## Feature Set\n\n* Upload/Run PRG Files\n* Upload REU Images\n* Upload/Mount Disk Images\n* Upload/Activate CRT Images\n* Upload/Activate Kernel ROM Images\n* Write Data Files to RAM\n* POKE, POKEW\n* Type Text with Petcat like Control Codes\n* Reset/PowerOff Machine\n* On Ultimate64: Enable/Disable VIC/Audio/Debug Stream\n\n## Installation\n\n* You need Python 3 >= Version 3.7 and Pip installed\n* Install stable version\n\n pip3 install u64cmd\n\n* Install current Git version\n\n pip3 install -U git+https://github.com/cnvogelg/u64cmd.git\n\n## Run u64cmd\n\nYou run the command with this syntax:\n\n u64cmd -h 192.168.2.1 reset\n\nThe `-h|--host` option is required to give the IP address or hostname of your\nUltimate 64/II+.\n\nThe above command triggers only the `reset` command and exits. You can also\nspecify multiple commands on the command line to execute them in a row:\n\n u64cmd -h 192.168.2.1 reset load_reu blureu.img load_prg -r blureu.prg\n\n## Command Description\n\n### Main Options\n\nUsage:\n\n u64cmd [--host|-h <host_addr] [--port|-p <port_num>] <command> ...\n\n* `--host|-h` gives the `host_addr` of the Ultime64/II+ (required). Use\n environment variable `U64CMD_HOST` to set the value permanently.\n* With `--port|-p` you can specify the port number. The default is `64`. Use\n environment variable `U64CMD_PORT` to set the value permanently.\n\n### More Main Options\n\n* The option `--version` shows the release version of the tool.\n* The option `--help` gives you a command overview.\n* Use `... <command> --help` to get detailed help on a command\n* The option `--dump-keycodes|-D` shows a list of known petcat control\n commands for typing message (see `type` command)\n\n### `type` - Type Text on C64 Keyboard\n\nUsage:\n\n type <text>\n\n* Types the given `text`.\n* You can pass control codes in the `{code}` notation (similar to `petcat`)\n* Use the `--dump-keycodes|-D` command to get a list of all supported codes.\n\nExample:\n\n type \"{clr}{wht}HELLO, WORLD!{lblu}{cr}\"\n\n### `prg_load` - Load (and Run) a PRG File \n\nUsage:\n\n prg_load [--run] [--jump] <prg_file>\n\n* `prg_file` gives the name of the PRG file you want to DMA load\n* add the `--run|-r` switch to automatically `RUN` the PRG after loading\n* similar `--jump|-j` jumps to the load address of the PRG file\n\n### `reu_load` - Load Data File into REU\n\nUsage:\n\n reu_load [--addr <addr>] [--offset <num>] [--size <num>] <reu_file>\n\n* `reu_file` gives the file name to be uploaded into the REU\n* `--addr|-a <addr>` defines the loading address. \n* `--offset|-o <num>` sets an optional offset in the file. By default the\n whole file starting at the first byte will be uploaded. With this command\n you can skip bytes for the upload.\n* `--size|-s <num>` limits the transfer. This allows you to reduce the\n uploaded block. By default the whole file is transferred.\n\nNote: You can specify any value in the tool either in decimal (e.g. `49152`)\n or in hex (e.g. `0xc000`)\n\n### `disk_load` - Load/Mount Disk Images\n\nUsage:\n\n disk_load [--run|-r] <disk_file>\n\n* `disk_file` is a D64 disk image to be uploaded and mounted\n* The optional `--run|-r` allows to automatically run the first file in the\n image.\n\n### `crt_load` - Load/Enable CRT Images\n\nUsage:\n\n crt_load <crt_file>\n\n* Uploads the `crt_file` as current cartridge image and activates it.\n\n### `kernal_load` - Load/Enable Kernal Image\n\nUsage:\n\n kernel_load <kernal_file>\n\n* Upload the `kernal_file` as the new kernal ROM.\n\n### `data_write` - Write data into RAM\n\nUsage:\n\n data_write [--addr <addr>] [--offset <num>] [--size <num>] <data_file>\n\n* `data_file` gives the file name to be uploaded into C64 RAM\n* `--addr|-a <addr>` defines the loading address. You can specify the value\n in decimal (e.g. `49152`) or in hex (e.g. `0xc000`)\n* `--offset|-o <num>` sets an optional offset in the file. By default the\n whole file starting at the first byte will be uploaded. With this command\n you can skip bytes for the upload.\n* `--size|-s <num>` limits the transfer. This allows you to reduce the\n uploaded block. By default the whole file is transferred.\n\n### `poke` and `pokew` - Write values into C64 Memory\n\nUsage:\n\n poke <addr> <value>\n pokew <addr> <value>\n\n* poke a byte or a word `value` into memory at address `addr`\n\n### `stream_on` - Enable VIC/Audio/Debug Streaming (U64 only)\n\nUsage:\n\n stream_on [--duration <num>] [--addr|-a <host_addr>] <stream_name>\n\n* Valid stream names are `vic`, `audio`, or `debug`.\n* The optional `--duration|-d <num>` allows to set the transfer duration. By\n default the value is set to 0 meaning infinite duration.\n* The optional `--addr|-a <host_addr` gives the host address where the stream\n will be sent to. Typically a multicast address or your own host address.\n\n### `stream_off` - Disable VIC/Audio/Debug Streaming (U64 only)\n\nUsage:\n\n stream_off <stream_name>\n\n* Valid stream names are `vic`, `audio`, or `debug`.\n\n### `reset` - Reset C64\n\nUsage:\n\n reset\n\n### `poweroff` - Power Off C64 (U64 only)\n\nUsage:\n\n poweroff\n\nEOF\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "A command line tool to remote control your Ultimate 64 or Ultimate II+ device.",
"version": "0.9.1",
"split_keywords": [
"c64",
"ultimate 64",
"ultimate ii+",
"ultimate 1541"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c902e44a24505efc215de74bb5317a75f6558c6155f69ac83d08f6477556b13a",
"md5": "5301db987475821adf6526048e7d6859",
"sha256": "c7cd5166f4f8cd5fa5a2c1d833ffeb71680a9a20b6a3bc59f3220ad0763f31d9"
},
"downloads": -1,
"filename": "u64cmd-0.9.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5301db987475821adf6526048e7d6859",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 8518,
"upload_time": "2023-02-01T20:37:13",
"upload_time_iso_8601": "2023-02-01T20:37:13.786779Z",
"url": "https://files.pythonhosted.org/packages/c9/02/e44a24505efc215de74bb5317a75f6558c6155f69ac83d08f6477556b13a/u64cmd-0.9.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3a9d2083e7347bcce364067243b0102242763830d5ab104ad6504fe9bc48dbc4",
"md5": "6b87df32b50bddad9a4ad74e0f15e3b9",
"sha256": "767185f4b283dc673e40965b84fc83b97b0d29d06bbeb8eabf733a7e24b37cf7"
},
"downloads": -1,
"filename": "u64cmd-0.9.1.tar.gz",
"has_sig": false,
"md5_digest": "6b87df32b50bddad9a4ad74e0f15e3b9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 10153,
"upload_time": "2023-02-01T20:37:15",
"upload_time_iso_8601": "2023-02-01T20:37:15.736950Z",
"url": "https://files.pythonhosted.org/packages/3a/9d/2083e7347bcce364067243b0102242763830d5ab104ad6504fe9bc48dbc4/u64cmd-0.9.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-02-01 20:37:15",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "u64cmd"
}