| 
						 
						   | 
						
						 The Memotech MTX Series  | 
						
						 
						
						   | 
					 
				 
				
				Bill Brendling's version of MEMU 
				This page describes Bill Brendling's 
				enhancements Andy's MEMU emulator. The contents of this page 
				were supplied by Bill but the page has been formatted to align 
				with the rest of the site, this includes reducing the displayed 
				image sizes. Clicking on the images will display the original, 
				full size, image files. Bill's original html file can be found
				here. 
				Update November 2022 
				Bill has decided to use Github to release future updates of 
				his version of MEMU, his repository can be found at 
				
				
				
				https://github.com/Memotech-Bill/MEMU  
				Whilst I am sure that Github is likely to be fine, 
				personally, I prefer to have access to "essential" downloads 
				more in my control, rather than be reliant on the likes of 
				Microsoft's continuing support for Github etc. Therefore, I will 
				continue to host Bill's version of MEMU on this page, though it 
				may not always be the latest version - which will, Microsoft 
				permitting, be available from Bill's page. 
				Introduction  
    Andy Key's MEMU is an extremely effective,
      feature rich, and flexible emulator for the Memotech MTX series of computers, without which
      none of the following would have been possible. One of the consequences of MEMU's 
	flexibility
      is that running the program requires supplying a number of command line switches to specify the
      details of the emulation required. A number of potential users find this 
	off-putting, this
      was reiterated at the last
      Memofest meetup. There are
      a number of possible solutions to this issue: 
    
      - It is possible to create a number of batch files (Windows) or command scripts (Linux)
        which run MEMU in a specific emulation mode.
 
      - Paul Daniels has produced a version of
        Gamebase
        which can be used to run many MTX games.
 
      - I wrote a Python based 
          Launcher which can start MEMU in a number of standard emulation modes. However this
        does not support all the MEMU features.
 
     
    			  
						
							
								When I first started playing with MEMU one of my main objectives was to turn a Raspberry Pi
      computer into a "Bare Metal" emulation of the MTX. This means no operating system and therefore
      no command line from which to specify the required switches. Therefore I had to provide a system
      for setting the configuration from within MEMU. Again I went for the option of providing a few
      "typical" configurations rather than supporting all of the options that MEMU can provide.
      						  
  I therefore added the option of a configuration dialog as shown: | 
								
								
								  | 
							 
							 
      
				While originally developed for the "bare metal" version, the dialog can also be included in
      Windows or Linux versions of MEMU, which may be of interest for the reasons given above. 
    My version of MEMU has also acquired a few other features which have not yet been included
      in Andy's version: 
    
      - The configuration dialog, as above. By default the initial configuration is read from
        "memu.cfg" in the same folder as the program executable. Changes made with the configuration
        dialog are saved back into this file. An alternative configuration file may be specified
        using the -config-file option on the command line. Other options may be specified on the
        command line as per Andy's MEMU. (Windows, Linux & Raspberry Pi)
 
      - Loading programs from or saving to audio (*.wav) files instead of data (*.mtx)
        files. This provides one way of developing a program on MEMU and then transferring
        it to a real MTX (or vice-versa). (Windows, Linux & Raspberry Pi)
 
      - Emulation of the CFX-II addon, including the Propeller VGA display.
        (Windows, Linux & Raspberry Pi)
 
      - Running Fuzix (a Unix/Linux clone). This relies upon
        the CFX-II emulation. (Windows, Linux & Raspberry Pi)
 
      - Enhanced keyboard remapping
        to improve the usability of MEMU with modern keyboards. This follows the approach used for
        the PC keyboard
          interface, and allows the keyboard mapping to be changed dynamically, using the
        <Scroll Lock> and <Num Lock> keys. (Windows, Linux & Raspberry Pi)
 
      - Using a real serial port to emulate the MTX serial port. This allows multiple machines
        running MEMU to be connected in a NODE ring. This has been tested with a Raspberry Pi connected
        to an x86 PC. It should be possible to similarly connect MEMU to a real MTX, but this has
        not been tested. (Linux only, including Raspbian)
 
      - Use of Raspberry Pi GPIO to connect MEMU to real hardware, including keyboard, joystick and
        printer. (Raspberry Pi including bare metal)
 
      - Use of Raspberry Pi GPU to accelerate MEMU display. (Raspbian only)
 
     
    Conversely, my version can be a year (or more) behind the latest features added to Andy's version. 
    For convenience I have created a number of distributions: 
    
    			
				Distributions 
				
				
				
				 
				(Downloads) 
				
   
				Microsoft Windows RuntimeThis contains two 32-bit versions of MEMU: 
    
      - memu.exe
 
      - This is the classic command line version of MEMU.
 
      - memu-cfg.exe
 
      - This is the version of MEMU with configuration dialog.
 
     
    To install, simply unzip the distribution into a suitable location, perhaps "Program Files (x86)".
      It may be worth creating a desktop shortcut, pointing to "memu-cfg.exe", with the working folder
      set to the folder containing the program. 
    			
				Linux (x86) RuntimeThis distribution contains four versions of MEMU. Two are for use with X-Window displays: 
    
      - memu
 
      - This is the classic command line version of MEMU.
 
      - memu-cfg
 
      - This is the version of MEMU with configuration dialog.
 
     
    The other two are for use from the console, without X-Window, and display full screen.
      Use <Ctrl> plus the function keys to switch between VDP display and 80-column display: 
    
      - memu-fb
 
      - This is the command line version of MEMU using full-screen frame buffer.
 
      - memu-cfb
 
      - This is the configuration dialog version of MEMU using full-screen frame buffer.
 
     
    To install, unzip the file into s suitable location. Optionally copy the contents of the "memu"
      folder into a location on the path, such as "/usr/local/bin". 
     
    			Raspbian RuntimeThis distribution contains the same four executables as the Linux distribution, but compiled
      for 32-bit ARM. It also contains a fifth executable: 
    
      - memu-pi
 
      - This version of MEMU is intended for use from the console, without X-Window. It displays
        full-screen, using the Raspberry Pi GPU. It can also use the GPIO to interface to real hardware.
 
     
    			 Bare Metal RuntimeThis distribution contains the bare metal version of MEMU (with
      configuration dialog), compiled for different versions of the Raspberry Pi.
      At present the following are NOT supported: 
    
      - Running on a Raspberry Pi model 4B
 
      - Serial port (DART) emulation
 
      - GPU acceleration
 
     
    			 Source DistributionThis distribution contains the source code for all the above versions. There are build scripts
      in the top level folder for building all versions. The building has to be performed on the
      appropriate hardware (Windows, x86 Linux or Raspberry Pi) for the distribution being built.
      Cross-compilation is not currently supported. 
    To save space, none of the ROMs, disk or tape images are in this distribution, you need at
      least one runtime distribution. The runtime should be installed in a folder "memu" under the
      top level folder. 
    			
				Configuration Dialog VersionsWhen first started, the configuration dialog versions of MEMU start in whichever emulation
      mode was last saved in the configuration file. To display the configuration dialog, use one
      of the following keys: 
    
      - <SysReq> key
 
      - Left <Windows> key
 
      - Right <Windows> key
 
      - <F11> key
 
     
    Different operating systems trap different key strokes for their own use, so try each of these
      to find one that works. Once in the dialog, use the arrow keys to navigate, and either the
      space bar or <Enter> key to select an item. To exit the dialog and return to the emulation
      select one of the options from the bottom line of the dialog. Note that "Exit" is exit the program
      not exit the dialog. 
    While the emulation is running, the following key strokes are also processed: 
    
      - Pressing both the <Alt> keys and then releasing them reboots the emulation. The reboot
        actually happens when the first of the keys is released. In CFX emulation, selecting a mode
        requires holding another key down while rebooting. Depending upon the operating system being
        used, try either of the following:
        
          - Press and hold one <Alt> key. Press and hold the required letter key. Press and
            release the second <Alt> key. Release the first <Alt> key. Release the letter
            key after a few seconds.
 
          - Press and hold both <Alt> keys. Press and hold the required letter key. Release
            the <Alt> keys. Release the letter key after a few seconds.
 
         
       
      - If keyboard mapping is enabled, then the following keys influence the mapping applied:
        
          - If <Scroll Lock> is off, then the keys exactly as on the MTX are emulated.
            This will work with all MTX software, but means that for some symbols you have to
            press a differently labeled key on the PC keyboard. See
            here for details.
            If <Scroll Lock> is on, then keys which do not exist on the real MTX are
            emulated to produce characters matching the symbols on the PC keyboard. The MTX ROM
            and CP/M are patched to recognise these additional keys, but they will not work with
            any software which has its own keyboard driver.
 
          - If <Num Lock> is off, to assist game play, the PC numeric keypad is mapped
            to the MTX keypad by key position. However this means that the keypad keys do not
            produce the numbers shown on the keys. If <Num Lock> is on, then the mapping
            is changed so that the numeric keypad produces the expected numbers.
 
         
        On some operating systems, it is not possible to ensure that the keyboard LEDs match
        the lock state as seen by MEMU. If keys are not producing the expected result it is
        therefore worth changing the lock states. 
     
    Within the configuration dialog, if "Audio Tapes" is turned off ("No") then only binary
      (*.mtx) tape files can be selected. In this mode, tape files will load very quickly.
      If "Audio Tapes" is turned on ("Yes"), then either binary (*.mtx) or audio (*.wav) tape
      files may be selected. However all files will be slow to load (realistic speed), and
      you will hear an approximation of the tape loading sounds. Binary files are effectivly
      converted back to audio in order to load them. Audio files in other formats such as *.mp3
      must be converted to *.wav before they can be used. 
    The supplied disk images are in a number of sizes: 
    
      - Files with an extension of "*.mfloppy" or "*.mfloppy-07" are 640KB type 07 floppy
        disk images which may be used as B: or C: disks in SDX or CP/M emulations.
 
      - Files with an extension of "*.img" are 8MB CP/M partitions. They may be used as either
        Compact Flash partitions (types 18 to 1F) or Silicon Disks (type 4F).
 
      - "ht.bin" is a large data image used by Hextrain. It is not
        readily accessible to other MTX software.
 
      - "fuzix.drive" is an image of a multi-partition drive, for booting
        Fuzix.
 
     
    			
				
				
							
								| 
								Typical configuration for SDX emulation 
								  
								The image opposite shows a typical configuration for SDX emulation, with a tape file ready
      for loading with the command LOAD "", and a disk of games available for
      USER LOAD "game".  
								Any user programs can be saved with USER SAVE "name" 
    							 | 
								
								
								  | 
							 
							 
				
				
							
								| 
								Typical configuration for CP/M emulation 
								  
								 A typical configuration for CP/M emulation, with two floppy disks, is shown 
								opposite. 
								  
								  
								 | 
								
								
								  | 
							 
							 
				
				
							
								| 
								Typical configuration for CFX-II emulation 
								1 For the CFX-II it is 
								necessary to open a sub-dialog to select the 
								files to form partitions on the emulated Compact 
								Flash cards.  
								  
								  
    							 | 
								
								
								  | 
							 
							
								| 
								Typical configuration for CFX-II emulation 
								2 To open this dialog, select 
								the Compact Flash card on the main dialog, and 
								then use <Space> or <Enter> to open the 
								sub-dialog. 
								  
								  
    							 | 
								
								
								  | 
							 
							 
				
				
							
								| 
								Hextrain configuration Hextrain is Andy Key's incredible
      MTX game with 3D graphics.  
								To run this, set the configuration as shown and restart.  
								Once CP/M
      has started type the command "hextrain" (renamed from "htsi"), and then 
								switch to the VDP window or display 
    							 | 
								
								
								  | 
							 
							 
				
				
							
								| 
								Fuzix configuration 1 Fuzix is a Unix like operating system for Z80 machines.
       
								It has been ported to the MTX with CFX-II storage add-on, and can be run in MEMU. To run
      it, set the configuration as shown: 
								  
    							 | 
								
								
								  | 
							 
							
								
								Fuzix configuration 2 
								 Restart, then once the CFX-2 startup page is 
								showing, reboot using the two <Alt> keys with 
								the "C" key down, as if rebooting to CP/M.  | 
								
								
								  | 
							 
							
								
								Fuzix configuration 3 
								 When prompted for "bootdev:", enter "hda1" 
								(without the quotes). Enter the date and time 
								when requested. Finally login as "root". When 
								finished using Fuzix, enter the command 
								"shutdown" to cleanly unmount the emulated 
								drives and halt the system. Otherwise a lengthy 
								check of drive integrity will be required next 
								time Fuzix is started. | 
								
								
								  | 
							 
						 
				
				
					
						
							| 
							 Configuration 
							Options   | 
						 
						
							| Group | 
							Option | 
							Description | 
						 
						
							| Hardware | 
							MTX500 | 
							Memotech MTX500 With 32k byte of RAM | 
						 
						
							|   | 
							MTX512 | 
							Memotech MTX500 With 64k byte of RAM | 
						 
						
							|   | 
							SDX | 
							Memotech with 576k bytes of RAM and two type 07 
							disks | 
						 
						
							|   | 
							CPM MONO | 
							576k bytes of RAM, two type 07 drives, CP/M mono 
							monitor | 
						 
						
							|   | 
							CPM COLR | 
							576k bytes of RAM, two type 07 drives, CP/M 
							colour monitor | 
						 
						
							|   | 
							CFX-II | 
							576k bytes of RAM, two CF cards, Propeller VGA 
							Display | 
						 
						
							| Keyboard | 
							Normal Keyboard | 
							Keys match MTX keyboard - Not always PC key 
							symbols | 
						 
						
							|   | 
							Remapped Keyboard | 
							Multiple keyboard modes - More closely match PC 
							key symbols | 
						 
						
							| 
				 Further details of the keyboard remapping function is described 
				on Andy's
				
				MEMU keyboard page. 
							 | 
						 
						
							| Sound | 
							No | 
							Sound Disabled | 
						 
						
							|   | 
							Yes | 
							Sound Enabled | 
						 
						
							| Audio Tapes | 
							No | 
							".mtx" files Only | 
						 
						
							|   | 
							Yes | 
							".mtx" and ".wav" Files | 
						 
						
							| Tape | 
							Select "tape" to load | 
							Use Cursor Keys to select the required tape 
							(.mtx) file | 
						 
						
							| Save Tape | 
							Select save "tape" | 
							Use Cursor Keys to select the required tape 
							(.mtx) file | 
						 
						
							| Huge SiDiscs | 
							No | 
							[For CFX] SiDiscs limited to 8MB | 
						 
						
							|   | 
							Yes | 
							[For CFX] Huge SiDiscs for HexTrain | 
						 
						
							| Save Si Drives | 
							No | 
							[For CFX] SiDiscs contents lost on exit | 
						 
						
							|   | 
							Yes | 
							[For CFX] SiDiscs contents saved (slow for huge 
							discs) | 
						 
						
							| CF Card 0 | 
							Select "disk" to load | 
							[For CFX] Edit CF Partitions | 
						 
						
							| CF Card 1 | 
							Select "disk" to load | 
							[For CFX] Edit CF Partitions | 
						 
						
							| Drive B: | 
							Select "disk" to load | 
							[SDX/CPM] Select the required disk (.mfloppy) 
							file | 
						 
						
							| Drive C: | 
							Select "disk" to load | 
							[SDX/CPM] Select the required disk (.mfloppy) 
							file | 
						 
						
							| Drive F: | 
							Select "disk" to load | 
							[CPM/CFX] Select the required disk image 
							file | 
						 
						
							| Drive G: | 
							Select "disk" to load | 
							[CPM/CFX] Select the required disk image 
							file | 
						 
						
							| Drive H: | 
							Select "disk" to load | 
							[CPM/CFX] Select the required disk image 
							file | 
						 
						
							| Drive I: | 
							Select "disk" to load | 
							[CPM/CFX] Select the required disk image 
							file | 
						 
						
							| Action | 
							Apply | 
							Change disk and/or tape and continue MEMU | 
						 
						
							|   | 
							Cancel | 
							Continue MEMU with no changes | 
						 
						
							|   | 
							Restart | 
							Make changes and restart MEMU | 
						 
						
							|   | 
							Exit | 
							Exit MEMU and shutdown the Raspberry Pi | 
						 
					 
				 
				
				Command Line VersionsMost of the command line usage is as per Andy Key's
      Documentation which is repeated here. 
    
      
        | Switch | 
			Description |  
      
      
        | -iobyte iobyte | 
			specify IOBYTE (initially 0x00) |  
        | -subpage subpage | 
			set ROM subpage (initially 0) |  
        | -addr addr | 
			set the address (initially 0x0000) |  
        | -mem file | 
			load file at address |  
        | -mem-blocks n | 
			number of 16KB memory blocks (default 4) |  
        | -mem-mtx500 | 
			equivelent to -mem-blocks 2 |  
        | -n-subpages rom n | 
			set number of subpages |  
        | -romX file | 
			load ROM X from file |  
        | -rompairX file | 
			load ROM X and X+1 from file |  
        | -vid-win | 
			emulate VDP and TV using a graphical window |  
        | -vid-win-big,-v | 
			make window twice as large (realistic size) |  
        | -vid-win-hw-palette | 
			use an alternate palette |  
        | -vid-ntsc | 
			refresh at 60Hz (instead of 50Hz) |  
        | -snd-portaudio,-s | 
			emulate sound chip using portaudio |  
        | -snd-latency value | 
			instruct portaudio to use a given latency |  
        | -mon-win | 
			emulate 80 column card using a graphical window |  
        | -mon-win-big,-mw | 
			make window twice as high (realistic aspect ratio) |  
        | -mon-win-mono | 
			green screen monochrome |  
        | -mon-th,-mt | 
			emulate 80 column card using full screen text mode |  
        | -mon-console,-mc | 
			emulate 80 column card using console only |  
        | -mon-console-nokey | 
			keyboard status shows no keys pressed |  
        | -mon-no-ignore-init | 
			don't ignore writes to non-emulated registers |  
        | -kbd-remap | 
			remaps MTX keyboard (despite shift state) |  
        | -kbd-country n | 
			sets the country code switches to n (default 0) |  
        | -kbd-type string | 
			auto type keys in this string |  
        | -kbd-type-file fn | 
			auto type keys in this file |  
        | -joy,-j | 
			enable joystick support |  
        | -joy-buttons string | 
			define left,right,up,down and fire buttons |  
        | -joy-central n | 
			percentage off-centre to press direction |  
        | -serial1-in fn | 
			serial 1 input from file/pipe |  
        | -serial1-out fn | 
			serial 1 output to file/pipe |  
        | -serial2-in fn | 
			serial 2 input from file/pipe |  
        | -serial2-out fn | 
			serial 2 output to file/pipe |  
        | -sdx-tracks n | 
			specify tracks of first drive (default 80) |  
        | -sdx-mfloppy file | 
			specify .mfloppy file in SDX first drive |  
        | -sdx-tracks2 n | 
			specify tracks of second drive (default 80) |  
        | -sdx-mfloppy2 file | 
			specify .mfloppy file in SDX second drive |  
        | -sidisc-huge | 
			enable Silicon Disc huge mode |  
        | -sidisc-no-save | 
			don't save Silicon Disc content on termination |  
        | -sidisc-file n file | 
			specify Silicon Disc content for a drive |  
        | -prn-file file | 
			specify file to receive printer output |  
        | -tape-dir path | 
			.mtx files are in this directory |  
        | -tape-overwrite | 
			SAVE can overwrite an existing file |  
        | -tape-disable | 
			don't patch INOUT to LOAD/SAVE/VERIFY .mtx files |  
        | -tap-file fn | 
			specify ZX tape file (default memu.tap) |  
        | -sna-file fn | 
			specify ZX snapshot file (default memu.sna) |  
        | -cpm | 
			emulate CP/M BDOS |  
        | -cpm-drive-a path | 
			where CP/M BDOS finds A: files (default: .) |  
        | -cpm-invert-case | 
			invert between CP/M and host filenames |  
        | -cpm-tail tail | 
			construct CP/M command tail |  
        | -cpm-open-hack | 
			don't insist on EX,S1,S2,RC being 0 |  
        | -sdx | 
			SDX support in ROM 5 (or -sdx3 for ROM 3) |  
        | -fdxb | 
			FDXB CP/M support |  
        | -speed hz | 
			set CPU speed (default is 4000000, ie: 4MHz) |  
        | -fast | 
			don't limit speed, run as fast as possible |  
        | file.com tail ... | 
			-cpm -iobyte 0x80 -addr 0x0100 -mem file.com |  
        | file.run | 
			-iobyte 0x00 -addr 0xAAAA (from header) |  
        | file.mtx | 
			subsequent LOAD/SAVE/VERIFY "" will use this file |  
      
     
				The additional options for my version are: 
				
      			  
        			  
						  | Switch | 
						  Description | 
					   
        | -vga  | 
			emulate Propeller VGA 
			display |  
        | -serial1-dev dev | 
			 serial 1 in/out 
			from device  |  
        |  -serial2-dev dev  | 
			serial 2 in/out from 
			device  |  
        | -cfx2 rom_file  | 
			enable CFX-II 
			emulation and specify ROM image file  |  
        | -cf-image c:p file  | 
			specify data image for 
			partition (p) on card (c)  |  
        | -cassette-in  | 
			hardware emulation - 
			MTX or WAV file to load  |  
        | -cassette-out  | 
			hardware emulation - 
			MTX or WAV file to save  |  
        | -mon-win-title  | 
			set title for 80 
			column window  |  
        | -mon-win-display  | 
			set display to use for 
			80 column window  |  
        | -vid-win-title  | 
			set title for VDP 
			window |  
        | -vid-win-display  | 
			 set display to 
			use for VDP window  |  
        |  -help | 
			displays list of 
			options and exits  |  
      
     
				The configuration dialog version also uses the same switches, 
				storing them in the
      configuration file, but they may also be given on the command line. There are a few additional
      switches listed below to support the operation of the dialog. 
				
      			  
        			  
						  | Switch | 
						  Description | 
					   
        | -config-file file  | 
			read configuration 
			options from file  |  
        | -no-ignore-faults  | 
			turn off permissive 
			options enabled by -config-file  |  
        | -rom-enable rom_bits  | 
			bit flags to enable 
			(1) or disable (0) a rom  |  
        | -no-cfx2 rom_file  | 
			disable CFX-II 
			emulation but specify ROM image file  |  
        | -mon-size  | 
			sets 80 col size (but 
			does not enable it)  |  
        | -disk-dir  | 
			directory containing 
			disk images  |  
        | -tape-dir  | 
			directory containing 
			tape files  |  
      
     
				And finally, two further switches specific to the Raspberry Pi specific versions: 
				
      			  
        			  
						  | Switch | 
						  Description | 
					   
        | -hw-config file  | 
			specifies the GPIO interface to MEMU, documented
            here |  
        | -gpu-mode mode  | 
			controls the use of the GPU for screen upscaling (memu-pi only):
            
              - mode = 1: Upscaling by ARM processor
 
              - mode = 2: Upscaling by GPU with interpolation
 
              - mode = 3: Upscaling by GPU without interpolation (default)
 
             
        	 |  
      
     
				
				
      			    
        | Revision History | 
						 
        | 2020-07-12 | 
			Minor fixes to 
			Autotype function and Wave file processing |  
        | 2020-05-19 | 
			Distribution files 
			updated with latest CFX-II ROM images (no source file changes) |  
        | 2020-05-10 | 
			The Propeller 
			emulation has been enhanced to include bug fixes and enhancements, 
			and the new CFX-II ROM is included (also the old one). There is also 
			an enhancement to VDEB to support setting breakpoints on specific 
			ROMs, which I used extensively in developing the new code.  |  
        | 2019-12-26 | 
			Added Visual Debugger 
			Function - see documentation page 
			Bug fix on CTC emulation in timer mode with a zero constant
        	 |  
        | 2019-11-17 | 
			First Release |  
      
     
				
				
      			  
        | 
			Downloads |  
        | 
			Download | 
			Build Date | 
			MEMU Base | 
			Description |  
        
			
						  | 
			2022-10-20 | 
			2019-10-12 | 
			Last Check for updates : 02/11/2022 
			Source Code Only |  
        
			
						  | 
			2020-07-12 | 
			2019-10-12 | 
			Source Code |  
        
			
						  | 
			2020-07-12 | 
			2019-10-12 | 
			Bare Metal Runtime 
			(Raspberry Pi) |  
        
			
						  | 
			2020-07-12 | 
			2019-10-12 | 
			Raspbian Runtime 
			(Raspberry Pi) |  
        
			
						  | 
			2020-07-12 | 
			2019-10-12 | 
			x86 Linux Runtime (32 
			Bit) |  
        
			
						  | 
			2020-07-12 | 
			2019-10-12 | 
			Microsoft Windows 
			Runtime (32 Bit) |  
        
			
						  | 
			2020-05-10 | 
			2019-10-12 | 
			Source Code |  
        
			
						  | 
			2020-05-19 | 
			2019-10-12 | 
			Bare Metal Runtime 
			(Raspberry Pi) |  
        
			
						  | 
			2020-05-19 | 
			2019-10-12 | 
			Raspbian Runtime 
			(Raspberry Pi) |  
        
			
						  | 
			2020-05-19 | 
			2019-10-12 | 
			x86 Linux Runtime (32 
			Bit) |  
        
			
						  | 
			2020-05-19 | 
			2019-10-12 | 
			Microsoft Windows 
			Runtime (32 Bit) |  
      				
						
						
						  | 
						2019-11-17 | 
						n/a | 
						Memu-Pi 
						GPIO Configuration | 
					   
      
     
    			
		
					  
				    |