| 
				
				 
				 
				  
				"MTX Plus+" - 
				Architecture 
				
				Basis of Design 
				The aim of this project is to create an updated "MTX", a Z80 
				based, 8-bit computer, that will be software compatible with 
				the original, but using the fastest available Z80 processor 
				(20MHz). Producing a functional, and perhaps even useful (!), 
				system will involve designing the hardware and creating low 
				level software to operate it - both elements are breaking new 
				ground for me and will involve quite a bit of learning on my 
				part. 
				Statement of "Requirements"  
				Perhaps better referred to as a wish-list, some high level 
				goals that the project should achieve - all very much dependent 
				on me acquiring the required skills, or finding help, to achieve 
				them. 
				
					- Software compatible with the original MTX computers
 
					- Flexible - able to run in  "MTX" and an "enhanced" 
					mode
 
					- Supporting additional functionality, perhaps including 
					hard disk/SD card
 
					- Modular - allowing staged development and upgrades
 
				 
				Design Development : "Nice to have" - MSX Compatibility 
				As I started to work through the design, it struck me that, 
				with the similarities in the hardware between the MTX and MSX 
				computers, it may be possible to include a degree of MSX 
				compatibility in MTXPlus. The major components in the MTX and 
				MSX are the Z80 CPU and the TMS 9918 (in MSX1) VDP, although the 
				VDP is accessed through different I/O ports. The systems also 
				use different programmable sound generators (PSG) and other 
				peripherals.  
				Update : The video board has been configured with a 
				jumper to select the I/O ports used, to be either MTX or MSX 
				compatible but the MSX sound chip proved to me too difficult to 
				incorporate at this stage. So, at this point, MSX compatibility 
				only extends as far as the video board.  
				  
				Likely Development Phases 
				
					
						
							| Phase | 
							PCB | 
							Main functionality | 
						 
						
							| 
							I | 
							Bus | 
							
							The system will consist of individual circuit boards 
							for the major modules such as the processor/memory 
							board and video board, connected over a system bus, 
							the system bus is described on the
							system bus page. | 
						 
						
							| 
							II | 
							Diagnostic | 
							Bus Diagnostic Card 
							My original plan was to develop the CPU board before 
							the video board, so in the early stages of 
							development, there was likely to be an 
							operational CPU board before a video board was 
							available and I wanted to be able to determine 
							whether the CPU appeared to be running "stand-alone" 
							with no operator interfaces connected. 
							The MTXPlus Bus Diagnostic Card was designed to 
							achieve this.  | 
						 
						
							| 
							III | 
							Video | 
							
							Video Board - VDP, VRAM, Sound Generator 
							As Martin and I have created MTXPlus+ to
							MTX 
							interface boards as part of the Diagnostic board 
							development, we now have the ability (by using 
							temporary I/O port addresses) to test a video board 
							on a standard  MTX. So, in a change to the 
							planned development schedule, the video board has 
							been "promoted" to Phase III and is being developed 
							ahead of the CPU board. The video board will 
							contain the VDP, VRAM, video output conditioning and 
							the Sound Generator. My long term goal is to have a 
							VGA output from the machine, but the VDP has a low 
							frequency output that it not VGA compatible. Video 
							up-scalers are not easy to build, and as I did not 
							just want to use an external up-scaler like the 
							HD9800 described on my
							MTX Video page, 
							the output from the VDP will be conditioned to 
							output RGB signals compatible with the
							SCART 
							interface of modern TVs. In another design 
							development, the video board output circuit 
							components will now be installed on a daughter board 
							- very similar to the original Memotech idea. This 
							configuration will allow different video 
							configurations to be developed and tested without 
							changing the base board design.  | 
						 
						
							| 
							IV | 
							CPU | 
							
							 
							CPU Board - CPU, CTC, ROM, RAM, 
							RTC, memory decode 
							logic and a "local" I/O connector.  
							  
							The intention is to create a Z80 CPU 
							board with functionality that is as close as 
							possible to the MTX, to such an extent that an MTX 
							OS/BASIC ROM can be dropped into the ROM socket and 
							run MTXPlus+ as an MTX. The features of MTXPlus+ 
							mode will be made available by selection of its own 
							ROM. 
							  To support this basic 
							design and to enable testing before the I/O board 
							was available, I had intended to include an 
							interface connector on the CPU board that would 
							allow some minimal I/O to be connected to the 
							system. The plan was to add a connector to the PCB 
							to enable "local", i.e., not backplane connected, 
							I/O to be built for testing etc.
							 However, 
							with the video board having been developed before 
							the CPU board, a considerable amount of testing has 
							already been possible. There is now little benefit 
							in including the "local" I/O connector on the CPU 
							board and it has been removed from the design to 
							free up the allocated board space.   Rather 
							than the proposed 20MHz, the CPU clock speed will now be 16MHz as 
							described on the 
							notes page   
							Making use of another couple of components from Lez, 
							the board will also include : 
								- 
								
A 
								Real Time Clock using a Dallas 12887, which is a 
								direct replacement for the IBM/AT 
								clock/calendar. Martin has proposed that the RTC 
								uses the same I/O ports (70h & 71h) as an IBM 
								PC, these ports are unused by any Memotech 
								hardware and may make it easier to refer to IBM 
								documentation when programming the RTC.  
								- 
								
A 
								MAX705 microprocessor supervisory module to 
								implement the RESET functions  
							 
							 | 
						 
						
							| 
							V | 
							
							I/O | 
							Base Scope : An I/O board 
							providing the same basic I/O functions as the MTX, i.e., 
							keyboard interface, 2 x Atari type joystick ports, 2 x RS232 ports and a parallel printer 
							port. 
							 Enhancements : The draft design includes 
							an
				8255 
				Programmable Peripheral Interface (PPI) chip, intended to be 
				used to provide an
				
				IDE interface to a
				Compact 
				Flash drive for "mass" storage. 
							Aspirational : Ideally, it would be possible to build a PS/2 
							keyboard decoder that would allow MTX type I/O 
							signals to be fed to the MTX ROM from a PS/2 
							keyboard. The design includes 2 CPLDs intended to 
							perform this function.  
							Once a PS/2 keyboard interface has been built, 
							and after creating a new OS for MTXPlus+, the enhanced capabilities of a PS/2 
							keyboard could be used.  | 
						 
						
							| VI | 
							
							GROM | 
							
							Games ROM Board, Martin's design for a multi-game 
							ROM card based on his 
							original MAGROM design. Although they won't 
							fit on one of the existing boards, the MAGROM 
							components do not require a full size Eurocard 
							board, but the extra space could be used for other 
							things, for example, a floppy disk controller.  | 
						 
						
							| 
							VII | 
							FDC | 
							
							 Add a Floppy Disk Controller, with 
							SDCard support - not required, see I/O Card CF card  | 
						 
						
							| 
							X | 
							
							Co-Pro | 
							Originally designed for use with a 
							standard MTX computer, Martin has adapted his 6502 
							Co-Processor design to work with MTXPlus+ and kindly 
							donated the first board to me.  | 
						 
						
							
							
								
									
										| 
										Completed | 
										
										In Progress | 
										
										In Design | 
										
										Future | 
									 
								 
							 
							 | 
						 
					 
					   
				
					
						
							| 
							 System Overview  | 
						 
						
							| 
							 To retain software compatibility with the 
							original MTX design, the upgraded system will need 
							to be I/O port and graphics compatible with the MTX, 
							but will also be capable of operating in an enhanced 
							configuration with a higher processor speed, more 
							memory and enhanced graphics capabilities. 
							This block diagram is from the
							MTX 
							Operator's Guide and gives a high level overview 
							of the MTX design, including the I/O port 
							allocation. I have shown the cassette interface in 
							grey as, at this point, I am not sure whether I will 
							implement it and may build a floppy disk controller 
							instead. Similarly, I will probably do away 
							with the TV interface and upgrade the graphics 
							output from the VDP to VGA, but the rest of the 
							ports will be unchanged, details of the I/O for "MTXPlus+" 
							can be found on the
							I/O Ports page. 
							
							 | 
							
							
							  | 
						 
						 
					  
					
						
							| 
							 Hardware Design  | 
						 
						
							| The system will be based on a
				
				Eurocard type backplane, with individual boards for the 
							major functions such as CPU & memory, video 
							processor & VRAM, I/O etc. I bought this used 
							backplane for £5.00 off ebay for development & 
							testing the concept, the finished system will 
							require a much smaller bus - even allowing for 
							expansion, probably 6 slots at most.  | 
							
							
							  | 
						 
						
							| Having decided on the Eurocard format, that set 
							the maximum size for each PCB. Typical Eurocard PCBs 
							for mounting in a
							3U 
							rack are 100mm tall x 160mm deep - my template 
							KiCad board is shown here, with a 40 pin DIL Z80 CPU 
							and
				DIN 41612 
							connector dropped in to show scale. If I was going 
							straight from KiCad to a finished design, I would be 
							able have quite a high component density on each 
							PCB, but for development, I plan to use Eurocard 
							sized prototype boards.  | 
							
							
							  | 
						 
						
							A typical Eurocard prototype board is shown 
							here, in view of the size of the board and the 
							potential number of wire links required, current 
							thoughts are that there will be 3 main PCBs, 
							populated like this :-
								
									
										| 1 | 
										CPU, CTC, System Memory (RAM/ROM) | 
									 
									
										| 2 | 
										VDP, VRAM, Sound Processor(s) | 
									 
									
										| 3 | 
										I/O Ports - Serial, Parallel, 
										Keyboard, Printer, USB | 
									 
								 
								Signal allocation is described 
								on the system bus 
								page.  
							 | 
							
							
							  | 
						 
						
							| Power Supply The system backplane will 
							be fed with +3.3v, +5v and +12v regulated supplies 
							from an PC ATX style PSU. To stabilise the on board 
							power, 0.1uF
							
							decoupling capacitors will be connected between 
							VCC and GND, installed as close as possible to each 
							IC.  
							A 100uF 
							electrolytic capacitor will be placed between VCC and GND, 
							close to the power input pins of each PCB. The bulk capacitor is intended 
							to overcome 
							voltage slumps caused by PC board trace inductances. 
							To handle noise and fast transients, a 100nF 
							capacitor will be connected in parallel with the 
							electrolytic.  | 
							
							 
							
							  
							
							
							   | 
						 
						
							| Here you can see the backplane stood up 
							vertically with the 
							diagnostic board and
							power distribution 
							board plugged in and powered up. For initial 
							testing and use, the backplane will sit flat on the 
							desk and the cards will stand up vertically from it, 
							but I need to start thinking of a permanent 
							solution.  | 
							
							 
							
							   | 
						 
						
							| Since I purchased the backplane, I had been 
							thinking how I might mount it when (if?) the system 
							actually worked and had been keeping an eye out on 
							ebay for a surplus Eurocard equipment rack of some 
							description when I came across this - it's a
							
							Schroff Compac Pro case.  | 
							
							 
							
							   | 
						 
						
							| It is not perfect for my backplane as it is only 
							63HP wide and so I will need to cut-down the 
							backplane a little., but for the price (£40 after 
							negotiation) it was too good an opportunity to pass 
							up.  
							 This is the sellers photo of the actual item, you 
							should be able to see that the items is brand new - 
							it is still in the original box with it's original 
							packing materials.  | 
							
							 
							
							   | 
						 
						
							| These are the rest of the parts for the case, I 
							am not 100% sure that I have everything that I need, 
							but I am very hopeful. Paying £40 for a less than 
							ideal box was not what I had in mind, but this now 
							gives me a secure "home" for the boards as they 
							are produced. 
							 Since I am not using a standard Eurobus power 
							supply, this case also has ample space behind the 
							card frame to install my ATX PSU.   | 
							
							 
							
							   | 
						 
						
							| This is the parts breakdown for the 6U case from 
							the Schroff catalogue. Although not necessarily 
							true for the desktop case like this, many of the 
							Schroff and other vendor's, equipment sub-racks have 
							lots of options available to suit the end-users 
							requirements.  
							Consequently, the basic parts kit is very spare 
							and the kit needs to be built up at extra cost to 
							build an enclosure that meets your needs. This was 
							always likely to be a problem when buying a used 
							rack - it might have been missing essential 
							components that I needed. Even though I have still 
							to confirm what is in the box, I think (hope) that I 
							pretty much have everything that I need and this was 
							a great buy at the price.  | 
							
							 
							
							   | 
						 
					 
					
					
						
							| 
							ATX Form Factor | 
						 
						
							As described above, MTXPlus+ 
							was designed to be a modular system that could be 
							built and tested in stages with the major modules 
							such as the CPU and video boards, plugging into a 
							system backplane. 
  Once the major modules had 
							been built and tested, Martin decided that he wanted 
							to build a complete system on a single
							ATX form 
							factor prototype board and fit it into a PC 
							case.  | 
							
							
							  | 
						 
						
							|   | 
							
							  | 
						 
						
							|   | 
							
							  | 
						 
						
							|   | 
							
							  | 
						 
					 
				 
				  
				 |