Computers Overview
Commodore PET
    Adverts
    Articles
    Documents
    Options
    Photos
    Projects
        Documents
        MemoPET
        PET ROMs
        petSD+
            Alternatives
            Assembly
            Feedback
            Firmware
            Hardware
            History
            IEC (for C64)
            News
            Order
            Parts List
            Revisions
            Software
            Testing
            Tooling
            User's Guide
                Start
                Controls
                Operation
                LCD
                Commands
                Error Codes
    Repairs
    Software
Sinclair ZX80
Sinclair ZX81
BBC Micro
Commodore 64
Sinclair ZXSpectrum
Memotech MTX
Memotech CP/M
Tatung Einstein
Atari ST
Commodore Amiga
PDAs
DEC 3000 AXP
OpenVMS
Raspberry Pi

 

 
 
 
 

Commodore PET Projects - petSD+

petSD+ - User Guide

 

 

Firmware Enhancements to Commodore DOS

Introduction

Other than the release notes in the firmware source distribution, there is little actual documentation for sd2iec, the notes on this page were mainly extracted from the sd2iec and NODISKEMU readme files and omit most of the technical details not necessary to use the features. For full details of the firmware's history and credits, refer to the NODISKEMU and sd2iec webpages.

The petSD+ firmware (NODISKEMU) includes enhancements from sd2iec which provide a number of features beyond those present in Commodore DOS. These additional features are inspired by the additional features developed by Creative Micro Designs (CMD) for their range of SCSI hard drives for Commodore 64 and 128 computers and included a Real Time Clock, support for disk partitions of up to 16 MB and sub-directories. More details beyond the limited information on using these additional features contained in the firmware release notes can be found in the Command Reference section of the CMD Hard Disk manual. These web pages will provide an overview of using the CMD features in petSD+.

Prior to producing their hard drive systems, CMD had also developed a product called JiffyDOS, an enhanced disk operating system designed to speed up disk read/write access. JiffyDOS also had a built-in DOS wedge which simplified sending commands to the disk drive. JiffyDOS and its built-in DOS wedge were available for CMD hard drives and this functionality is supported by NODISKEMU.

 

Commands

General Notes

For simplicity, the disk commands documented on these pages will initially be based on the assumption that you are using a DOS wedge, either embedded in Steve Gray's replacement Editor ROM, or loaded as a TSR program such as Nils Eilers DOS Wedge program.

When I get time, I will probably expand the examples to include the equivalent Commodore BASIC native commands, but you REALLY should be using a DOS wedge anyway ! To understand why, take a look at my Disk Commands page, it describes how you need to access disk drive functions by passing strings to the device over the Command Channel (#15).

Assumptions petSD+ device address = #8

Partitions

sd2iec includes support for partitions, as do the initial releases of NODISKEMU, however, partition support in NODISKEMU is depreciated and will likely be removed as some point, as Commodore's hard drives didn't support them, Windows is unable to cope with multiple partitions on a single SD card and they're conflicting with support for multiple drives per disk unit.

This User's Guide will not discuss the use of partition commands, other than for accessing the EEPROM file area. The partition commands are presented on their own for ease of removal from this page if/when they are removed from the NODISKEMU firmware.

NODISKEMU Partition Structure

Reported by entering "@$=p"
Number Reported as Type
0 "system" sys [tem]
1 "" nat [ive]
2 "eepromfs" nat [ive]

In sd2iec, partitions are numbered from 1 to x, where x is the last partition on the device. Partition 0 always points to the currently selected partition, and is 1 by default.

By default, the EEPROM file area in NODISKEMU is Partition number 2, but to cater for other hardware, the base sd2iec firmware also allows direct access to the EEPROM file area using the "!" character.

List SD Card Partitions @$=p
Change to Partition 2 (the petSD+ EEPROM file area) @cp2
Change to the EEPROM file area (device independent) @cp!:
   


Sub-Directory and Image File Support
Directory Filters

To show only directories, both "=b" (CMD-compatible) and "=d" can be used.
On a real Commodore drive, "d" matches everything.
To include hidden files in the directory, use "*=h"
NODISKEMU marks hidden files with an h after the lock mark, i.e. "prg<h" or "prg h".
Examples wedge native
Show only sub-directories @$:*=b @$:*=d open 1,8,15,"$:*=b": close 1
     
CMD-style "short" and "long" directory listings with timestamps are supported ("$=t"), including timestamp filters.
Examples wedge native
Directory with short timestamps @$=t open 1,8,15,"$=t": close 1
Directory with long timestamps @$=t:*=l tba
Sub-Directory and Image File Operations
Subdirectory access is compatible with the syntax used by CMD drives, although drive/partition numbers are completely ignored. Commands are similar to the MS-DOS MD (Make Directory), CD (Change Directory) and RD (Remove Directory) commands.

CD is also used to mount/un-mount image files. 
Just change into them as if they were a directory and use "@cd:←" to leave. Please note that image files are detected by file extension and file size and there is no reliable way to see if a file is a valid image file.
Examples wedge command(s) native command
Move up one directory level @cd:← @cd← open 1,8,15,"cd←":close 1
Change into fu @cd:fu @cd/fu tba
Change into \fu   @cd//fu tba
Change into fu\bar @cd/fu:bar @cd/fu/bar tba
Load image.d64 (a .d64 image) @cd:image.d64 @cd/image.d64 tba
Load image.d80 (a .d80 image) @cd:image.d80 @cd/image.d80 tba
Close the image file @cd:← @cd← tba
MD uses a syntax similar to CD and will create the directory listed after the colon (:), relative to any directory listed before it.
Creates bar in fu @md/fu/:bar   tba
Creates bar in \fu @md//fu/:bar   tba
RD can only remove subdirectories of the current directory.
Deletes fu @rd:fu   tba

File Operations
Copy (C)   
Syntax:       C[partition][path]:targetname=[[partition][path]:]sourcename[,[[p][p]:]sourcename...]
 
Examples wedge command(s) CMD command
       
       
       
       

 

 

UNDER CONSTRUCION

 

 

 

LCD Functions  <  Previous Page   Goto   Next Page  >  Error Codes

References :

 

A CMD DOS Primer http://lyonlabs.org/commodore/c64.html

 

mailto: Webmaster

 Terms & Conditions