Computers Overview
Commodore PET
Sinclair ZX80
Sinclair ZX81
BBC Micro
Sinclair Spectrum
Memotech MTX
    About
    Library
    Manuals
    Options
    Photos
    Projects
      CFX
      Hardware Hacks
      Legacy (1980s)
      MAGROM
      MTXPlus+
          Architecture
          Design Data
          Firmware
             CPU
               Clocks (PHI)
               Memory Map
               ROM
                   Boot
                   Err. Msgs
                   Features
                   Media
                   Timing
               Speculator+
             I/O
             Video
               Wait States
          Parts
          Software
      PAL Reader
      Programmers
      ReMemotech
      ReMemorizer
      SDX
    Repairs
    Software
    Tools
    User Groups
    Video Wall
Memotech CP/M
Atari ST
DEC 3000 AXP
OpenVMS
Raspberry Pi

 

 
 
 

"MTX Plus+" ROM : Offline Storage

 

Background

Like the majority of home computers of the day, the original MTX used compact cassette tape for offline storage, however, it was not a viable, nor indeed desirable, option for MTXPlus+.

There are a number of formats that could have been considered for use as the removable media system, including SD card as used in Andy's REMEMORizer, but, given that Lez had included Compact Flash readers in the parts kits that he donated, this was the logical choice. In addition, Lez had also included a number of 8255 PPI (Programmable Peripheral Interface) chips in the kit and there were proven instances of using the PPI with CF available on the internet.

 

Media Format

Ideally, to facilitate the easy exchange of data between MTXPlus+ and other systems such as a PC, the media used in the CF reader would have used a modern standard file system. A common file system used for removable media is FAT32, initially, we planned on using FAT32 for MTXPlus+.

 

The most convenient way to have MTX BASIC use the CF interface for file loading and saving was to modify the existing BASIC tape commands, "LOAD", "SAVE" and "VERIFY". Martin patched the existing ROM and added new code in the MTXPlus+ support ROM to control the CF interface from MTX BASIC.

 

Feature FAT 32 (Microsoft) Memotech CP/M
Disk / Partition maximum size 32GB 8MB
Maximum files in root directory No practical limit 512
Sub-directory support Yes No
Maximum file size 4GB  
Maximum filename size 255 8.3
File Date & Time stamp support Yes No

 

The table compares features of FAT32 formatted system with the CP/M format used by Andy's REMEMORIZER,  based on the numbers in the table, you would think that FAT32 was the clear winner. However, the FAT32 implementation on  MTXPlus+ was found to be considerably slower than using the Memotech CP/M format and the final implementation on  MTXPlus+ uses the latter.      

 

Both the CP/M and SDX BASIC versions of the original Memotech disk hardware used the CP/M filing system. As with the original SDX,  MTXPlus+, disk access from BASIC is achieved using USER commands, such as USER LOAD and USER SAVE.

 

Memotech Data File Formats

The majority of Memotech MTX software was already available in a number of different formats, including tape files (".mtx"), sound files (".wav", ".mp3) etc. Andy has a good explanation of the various file formats on his site, but in brief, the files are predominantly available in the following types :-

Type Description
.mtx a binary copy of an MTX tape file
.run games for the SDX disk system to be run from MTX Disc BASIC
.bas games for the FDX or SDX disk systems, to be run from the associated BASIC program
.com games for the FDX or SDX disk CP/M systems to be run from CP/M

 

MTX ROM Modification (CP/M File Format)

File Naming Convention

The default filename format used by CP/M is 8.3. MTX BASIC allocated up to 16 characters for tape filenames, we decided that MTXPlus+ would use the 8.3 naming convention and throw away the additional 4 characters available to MTX BASIC.

Subdirectories

Subdirectories were not supported by CP/M 2.2 and are therefore not supported on MTXPlus+.

 

SDX BASIC CF Commands

The additional commands added to SDX BASIC to support the CF card are shown below 

SDX BASIC File Commands
Type LOAD SAVE
.mtx USER MTX "FILENAME.MTX" n/a
.run USER RUN "FILENAME.RUN" n/a
.bas USER LOAD "FILENAME[.BAS]"  USER SAVE "FILENAME[.BAS]"

SDX BASIC Additional Commands
Directory Listing USER DIR ["filespec"]
Disk status (Free Space) USER STAT
Display all SDX CF Commands USER HELP

 

 

 

 

mailto: Webmaster

 Terms & Conditions