Computers Overview
Commodore PET
Sinclair ZX80
Sinclair ZX81
BBC Micro
Sinclair ZXSpectrum
Memotech MTX
    About
    Library
    Manuals
    Options
    Photos
    Projects
    Repairs
    Software
    Tools
    User Groups
    Video Wall
Memotech CP/M
Atari ST
Commodore Amiga
PDAs
DEC 3000 AXP
OpenVMS
Raspberry Pi

 

 
 
 

The Memotech MTX Series

 

2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  Memofest 2023   2024?


Memofest 2023 was hosted by Bill Brendling on 28th October

 

2023 was the 10th anniversary of the first Memofest,which was held in 2013 hosted by Jim Wills, marking that anniversary, a small get together was arranged for 2023. After various ideas were kicked around, Bill Brendling kindly agreed to host at his place in the London area.



(Most photos and [edited] text commentary courtesy of Bill Brendling)
Very few people were able to travel, but a number of  "attendees" were able to remotely access the event using Skype.

As usual, Mark made the effort to travel and was joined by Dave Snowdon, a recent addition to the community.


Martin, Jim, Claus and myself dialed in to the Skype conference at various points during the day,
Some low quality Skype screen captures of the remote attendees . . .

Martin, perhaps having learned a lesson from last year's "Memofix", set out his stall early with his choice of T-shirt.
Jim, with an FDX in the background (although the MTX is actually running MFX).
Zooming in over his left shoulder, you can see that he is shamelessly plugging his latest offering
                                            
Claus called in from afar too
As is customary, Bill provided an MTX themed cake for his visitors.

Unfortunately, he did not take a photo of the cake before the gannets descended, other than this image (of most if it) captured through Skype.

The cake was a recreation of the Zilog Z80, with the correct number of pins!
By the time that Bill took a photo, the Z80 had been reduced to a Z30!

The cake looked delicious!
 
Exhibits on display 
Bill's selection of Memotech kit on display, including :

   his original MTX with SDX disc drive and 80 column board
   his second MTX
   various test and development tools
   a number of Raspberry Pi Pico devices

more details below . . .
Close up of Bill's "production" MTX

This was purchased new. Ever since buying the SDX this machine has been used almost exclusively with CP/M. That may partly because none of the documentation supplied by Memotech indicated that it could be used with ROM BASIC with USER commands to access the disk.

Whenever [Bill] wanted to use BASIC [he] used FDXB.
Close up of Bill's second MTX

It was acquired probably some time in the 90s, and has sat in a cupboard ever since. It was fished out to demonstrate the MFX. It suffers from rather stiff keys owing to the lack of use.

[This is a common problem with MTX computers that have not been used regularly, and in most cases, improves when the keys are vigorously exercised]
This is one of the test boards that Bill built while developing new firmware for the FPGA on the MFX (more on that later . . .)

It is a partial reproduction of the MFX, with interfaces for the video SRAM, VGA output and SD card. A Raspberry Pi Pico stands in for the Z80. Because the Pico is a 3.3v device (compared to the 5v Z80) no level shifters are required.

Unfortunately, the programming connectors on the FPGA board are not on the same 0.1 inch grid as the main FPGA connections, so it is not possible to include sockets for these on the matrix board.

Instead the FPGA board is hung over the edge of the test board and a ribbon cable is used to connect to the programming socket. The Pico can then either program the FPGA or test it without having to unplug anything.
For testing an assembled MFX board Bill built a second test unit.

This board can be plugged into the MFX edge connector to test everything on the board. This board is not able to do any reprogramming, but it does have a wandering probe to test the logic value on any of the pins on the MFX.
When developing the VHDL code for the FPGA [Bill] has frequently found it useful to simulate the operation of the code. For this [Bill] uses ghdl. The resulting logic signals can then be displayed in GTKWave
Bill also demonstrated his latest version of MEMU for the Pico which adds:

   The emulation configuration dialog.
   Silicon disks, including huge disk support.

These features were already in the PC versions of MEMU. Adding them to the Pico version means that this can now run HexTrain.

The Pico, and the VGA Demo board it is sitting on are both commercially available boards, with a total cost of under £25.

For all the details of HexTrain and the very clever coding which makes it possible to run on an MTX see the HexTrain page Andy Key's website.
Close up of the  Pico and the VGA Demo board
Dave [Snowdon] bought along his MTX512.

It was the first one [Bill had] noticed as having the RS232 ports fitted.

Opening the case revealed an FDX interface board fitted, although Dave has never had an FDX. We powered the MTX up, and apart from a fairly severe case of keyboard bounce it seemed to be in fully working order.

(Sorry no photo of Dave's machine, but photos of the RS232 board can be found on this page.)

Although Dave did not bring it along, he says he has a 5 1/4 inch version of the SDX, but perhaps no disk drives. Modern storage options that he could try are an MFX, although that would require removing the FDX / RS232 interface. Alternately a CFX or CFX-II could be fitted externally. We did briefly demo my CFX-II fitted to Dave's MTX.

[Ed. As Dave does not have an FDX, as noted in the MFX User's Guide, removing the RS232 board is likely to have a minor impact, "it is suggested that the loss of RS232 functionality is mitigated by MFX’s TCP/IP networking capabilities."]
Update : after the event, Dave posted a picture on the forum of the internals of his MTX512 with RS232 board fitted.

NB: in order to install MFX, the RS232 com port 25 way D connectors would also need to be removed.
Martin showed this off . . . .

At first glance, it is a Memotech FDX system box

In reality, it is an Altera DE1 development board running a copy of Andy Key's REMEMOTECH.

Martin has designed and 3D printed a half size model of the FDX case and mounted the DE1 inside it. Completing the picture is a mini VGA screen and PC keyboard. 

Looks good doesn't it?
Martin did a demo of Bill's MTX webserver in operation, Martin's MFX was serving files over the internet for display on a web browser at Bills house.

Bill was keen to point out that "The credit for the MTX webserver should be at least 99% Andy Key, [he] only added a few tweaks. [Bill] might claim a little more credit for the FTP server, but even that would not have been possible without Andy's work."
(no photo)
Jim demonstrated running Bill's FTP server on MFX, transferring files over the network from PC to the MTX with MFX installed.
To illustrate how MFX's network capability makes file transfer between PC and MFX quick and easy, Jim downloaded Claus's Fruit Panic game  conversion, (released at last year's Memofest), from my website, unzipped it, transferred it to MFX and ran the game - all in a couple of minutes or so.
   
MFX Firmware  Developments
As noted above, Bill has made some significant enhancements to the FPGA firmware in his MFX and demonstrated a number of these during the event.

Some of these, such as foreign character display and SD card enhancements, would likely be very useful to other MFX owners. Other features, such as the expanded colour pallets, will only be appreciated if software is written to take advantage of them - lets hear it from you budding Z80 programmers!
[Bill] has added 64-colour support to the 80-column display, rather than just 8 colours
The MFX hardware is actually capable of producing 4096 (slightly) different colours (12-bits, although not on the same screen).

[Bill] has added a colour palette (or lookup table) to the video output stage which can map 256 input colours to any of the 4K output colours
The 80-column display has a font of 256 text characters and 256 graphics characters. [Bill has] made the text font completely redefinable:

This shows a font for code page 850, which provides the accented characters needed for European languages. CP850 is not actually ideal as that a number of the accented characters are on codes 0x80-0x87 which the MTX uses for the function keys. CP1252 would be better as that has the accented characters on higher codes, but [Bill has] yet to find a font for this.
[Bill has] also added a 320x240 pixel graphics mode

[He is] still considering further graphics modes: 320 x 240 x 2-bits per pixel 320 x 240 x 3-bits per pixel 160 x 120 x 8-bits per pixel [he has] yet to write the ROM code which will enable any of these enhancements to be used from BASIC. None of these enhancements require any hardware modifications, only an update to the FPGA hardware, so they may become available as an MTX upgrade at some point.
The VDP emulation has also been enhanced. Martin had already added multi-colour sprites which the TMS9929A cannot do. [Bill has] further added multi-colour 40-column text.
The emulated VDP output also goes through the colour palette so that any of the 16 VDP colours can be mapped to any of the 4K colours the MFX can produce
All of the recent Memotech storage devices (CFX, CFX-II and MFX) store the CP/M disk images as successive 8MB slices at the beginning of the storage media, perhaps followed by the HexTrain data file. This leaves the rest of the, usually much larger, storage device unusable.

Also, each of the devices use different hardware to access the storage space. As a result, any program such as HexTrain which wishes to make use of the extra storage capacity needs to have a different version for each device.

To work around this [Bill has] been developing an "Extended Storage" interface, which can be implemented on each device to provide a standard way of accessing the entire capacity of the storage device. This consists of a few extra code entry points near the top of memory (similar to the existing disk access routines at 0xFFF0 - 0xFFFE). Programs can then simply call these routines and will obtain access to the storage by whatever means is appropriate to the device. That means that there only needs to be one version of the program.

One feature of this interface is that it will be possible to partition the media in the DOS/Windows sense. One partition can contain the CP/M disk images (and HexTrain data). Another partition can be FAT formatted, readable and writeable from Windows or Linux without requiring any special software. Then a CP/M program using the Extended Storage interface can move files between the FAT partition and CP/M drive images
So far this is for CP/M only, not from ROM BASIC.

If completed, implementing this will just require ROM updates for the devices. Existing (un-partitioned) media will continue to work.

[Ed. Martin and Dave found this really interesting and will engage further with Bill to investigate incorporating this feature in our devices, including MFX.]
Software
Bill also demonstrated some of his legacy software originally written for his SDX, including [his] PCB design program. Essentially a monochrome paint program for drawing PCB pads. Function keys are used to place IC pads of different sizes and styles. The designs were then printed on an HP ink jet printer and then used to photo-etch the PCB boards.

(The program and manual are available here)
Bill also demoed his IBMDISC utility. Although intended for CP/M discs, the 3.5 inch SDX can be persuaded to read and write DOS (FAT) formatted 720K floppy discs. Files can then be copied between the DOS floppy and the CP/M RAM disk. That is my usual method of transferring files between the MTX and my PC. The fact that it is an old program can be seen from the year 2000 bug in the file dates.

(The program and manual are available here)
Jim demonstrated the Sound Effects and Music code for the Memotech that he and [Bill] have been working on together. Jim has code (EnvoSound, originally from RollaBearing) for producing sophisticated sound effects from the Memotech SN76489 sound chip. This code applies complex sound and frequency envelopes to the generated sound, controlled by a large number of parameters. To assist in designing sound effects [Bill] developed a program (NoteEdit) to allow interactive selection of all the parameters and test playing the resulting sounds:
As well as sound effects, games need music. EnvoSound can produce the individual notes, but they need to sequenced to play a tune. Jim decided that the easiest way to compose music is as MIDI files. These can then be processed by Python code on a PC to produce compact "Memotech Sound" files (*.msd) which can be embedded in a game.

To test the resulting music, a stand-alone player (msdplay) has been developed which can play the *.msd files.

The executables for NoteEdit, msdplay and one example file (blackbd.msd) can be downloaded from this link
   
AOB
Other topics that were covered during the day include:

    EPROM & PIC programmers using printer port.
    History of CFX, Propeller video & CFX-II leading to MFX.
    Andy's read-only PROM disk emulator.
    MTX_Lib and the Code::Blocks GUI for developing Memotech programs in C.
    [Bill's] implementation of a ZMachine interpreter for playing text adventure games.
    Any use of PIO socket?
        [I mentioned the PAL reader that Tony Brewer designed for me]
        [Some interesting projects were covered in a few electronics magazines back in the day]
    CTC an asset for MTX.
    Jim gave a review of his porting of original MTX games to modern hardware (PCs and Phones).
 
Memotech Hospital
No patients were admitted to the Memotech Hospital this year :-)

 

 

 

mailto: Webmaster

 Terms & Conditions