2019-01-09 23:54:22 -08:00
|
|
|
# CMD executable PATH for ProDOS's BASIC.SYSTEM
|
2019-01-06 16:44:54 -08:00
|
|
|
|
2019-09-30 21:04:44 -07:00
|
|
|
[![Build Status](https://travis-ci.org/a2stuff/prodos-path.svg?branch=master)](https://travis-ci.org/a2stuff/prodos-path)
|
|
|
|
|
|
|
|
|
2019-01-06 16:44:54 -08:00
|
|
|
Build with [ca65](https://cc65.github.io/doc/ca65.html)
|
|
|
|
|
|
|
|
Installation:
|
|
|
|
* Copy target to ProDOS disk
|
2019-01-06 17:23:56 -08:00
|
|
|
* From BASIC.SYSTEM prompt, run: `-PATH` from STARTUP (or by hand)
|
2019-01-06 16:44:54 -08:00
|
|
|
|
|
|
|
Usage:
|
|
|
|
```
|
2019-01-09 21:20:16 -08:00
|
|
|
PATH prefix - set search path(s) - colon delimited
|
2019-01-09 23:54:22 -08:00
|
|
|
PATH - view current search path(s)
|
|
|
|
cmdname - load and execute named CMD, if in PATH
|
2019-01-06 16:44:54 -08:00
|
|
|
```
|
|
|
|
|
2019-01-09 21:20:16 -08:00
|
|
|
Once set, binary files of type `CMD` in the specified directories can be invoked by name.
|
|
|
|
* CMD file is loaded at $4000 and invoked; should return (`rts`) on completion.
|
2019-01-07 23:11:00 -08:00
|
|
|
* The command line will be present at $200 (`GETLN` input buffer).
|
2019-01-09 23:54:22 -08:00
|
|
|
* Supports multi-segment, colon-separated paths, e.g. `/hd/cmds:/hd2/more.cmds`
|
2019-01-06 17:23:56 -08:00
|
|
|
|
|
|
|
Example:
|
|
|
|
```
|
|
|
|
] -/hd/path - install it
|
2019-01-09 21:20:16 -08:00
|
|
|
] PATH /hd/cmds:/h2/bin - set PATH
|
2019-01-06 17:23:56 -08:00
|
|
|
] PATH - verify path
|
|
|
|
/hd/cmds
|
|
|
|
] BELL - will invoke /hd/cmds/BELL if present
|
2019-01-07 23:11:00 -08:00
|
|
|
] HELLO - will invoke /hd/cmds/HELLO if present
|
2019-01-06 17:23:56 -08:00
|
|
|
```
|
2019-01-06 16:44:54 -08:00
|
|
|
|
|
|
|
Notes:
|
2019-01-09 21:20:16 -08:00
|
|
|
* Allocates a permanent buffer to store the code and path (2 pages)
|
2019-01-06 17:23:56 -08:00
|
|
|
* Can be invoked as lower case (e.g. `path ...`)
|
2019-01-07 23:11:00 -08:00
|
|
|
* Applesoft BASIC commands are unaffected (but can't be CMD names)
|
2019-01-09 23:54:22 -08:00
|
|
|
* Search order when a command is typed:
|
|
|
|
* ProDOS BASIC.SYSTEM intrinsics (`CAT`, `PREFIX`, etc)
|
|
|
|
* AppleSoft keywords (`LIST`, `PRINT`, etc)
|
2019-06-12 21:38:06 -07:00
|
|
|
* CMD files in paths, in listed order
|