Introducing EasyCLI

EasyCLI is a command shell for the Commodore 64 computer. EasyCLI is packaged as an EasyFlash cartridge. This gives EasyCLI the ability to boot the computer and bring the user straight to the shell without having to load and run a program from disk.

Running EasyCLI

When it comes to running EasyCLI, you have a few options. First, you can run the downloadable cart image directly from here and load that cart image in VICE. The emulator will detect the cartridge as being in EasyFlash format and automatically configure the emulator.

The second way to run EasyCLI is to use EasyProg to write the downloadable cart image to an EasyFlash or EasyFlash 3 cartridge.

Demo


What does it do?

EasyCLI comes packaged with several built in commandlets, each of which is it's own 8K program that is stored in the EasyFlash cartridge and loaded on demand. The following features are planned for version 1.0 through implementation as commandlets:
  • HELP - in program help system
  • CD - change directory
  • DIR - display directory
  • MKDIR - make directory
  • RMDIR - remove directory
  • DEL - delete file
  • REN - rename file or directory
  • COPY - copy files
  • MOVE - move files
  • SHOW - display text file
  • MKIMG - make disk image
  • WRIMG - write disk image

In addition to the commandlets that will be included with EasyCLI, the dispatcher understands the following verbs internally:
  • @ - Text following the @ sign is sent to the current device as a command. (ex. "@ui" sends the reset command to the current drive.)
  • # - A number succeeding the # is used to assign the current device (if that device exists). (ex. "#9" sets the current device to device 9.)
  • : - A number succeeding the : is used to assign the current drive on the current device. There is no checking that the drive exists. (ex. ":1" sets the current drive to drive 1)
  • exit - Leaves EasyCLI. If BASIC cannot be started then it forces a hard boot.
  • cls - Clears the screen.
  • wait - Waits for user to hit a key.
  • echo - Displays trailing text on a new line.

Hitting the RESTORE key at any time re initializes EasyCLI and forces it to enumerate the drives again. This is handy if you turn on a drive that wasn't on when starting EasyCLI.

Scripting

EasyCLI will use a very simple scripting language that can be used to chain together commands. Scripts reside on the physical devices, not in the EasyCLI cart image. An example of a script that cleans up a couple of CMD-DOS partitions and then copies in new files from a uIEC is as follows:

#10
@cp50
del :somefile
@cp1
cd //path
del :someotherfile
@cp50
#11
cd image.d64
copy :somefile 10#0:
#10
@cp 1
copy 11#0::someotherfile

EasyCLI Architecture <<---- Click here to read about the architecture

Credits

All code is copyright 2012, Payton Byrd. Portions of the code are borrowed and modified from CBM-Command, from which code originated with both Payton Byrd and Greg King.

Last edited Jan 7, 2013 at 9:56 AM by plbyrd, version 29