ZX Spectrum 128k do it yourself. Part 2

    image
    The first part is here.

    All images are clickable.

    More than a year has passed since I wrote an article about the assembly of the ZX Spectrum clone “Leningrad”. And during this time its capabilities have expanded significantly. I did not think that I would write a sequel to it, but still there are not so many articles on retrocomputers, so I decided.

    Expansion port


    The computer to which nothing can be connected is very limited in capabilities and I decided to solder the expansion port to it. In addition to the 40 pin IDE, nothing else fit on the board, but after calculating the number of contacts I needed, it turned out that this was enough. Minus one contact per key, 2 contacts + 5V, 2 contacts to ground.





    Keyboard in the case


    Previously, I used an external keyboard, but I wanted a more authentic form factor. At the time of assembly, they brought me the clave from the Spectrum from the 90s with stickers. The ports for the Sinclair of joysticks and the RESET button were screwed to it. A simple matter, we cut a rectangle in the case and fasten it to the racks on the board. The back also had to be cut a bit.



    Games without downloads


    Cartridges for the Spectrum were not popular with us, except for the game console ALF. Not that they would be popular in Europe either, as they demanded an expensive device ZX Interface 2. Officially, only 10 games were released. A cartridge is just a ROM with a pre-recorded game on a board with a set of contacts, so making this device is a snap. I have long wanted to try to etch a circuit board and now is just that case. But first, you also need to separate it, for this I used the sprint layout program.



    On the Leningrad board itself, I just soldered a pull-up resistor to the 20th contact of the ROM and the contact itself brought to the expansion port. When a cartridge is connected, + 5V will be supplied to it and turn off the computer's ROM. Well, the contact / RDROM also brought to the expansion port. Well, the board is divorced, we are cutting a square from a piece of Soviet textolite. We put the page from the glossy magazine into the printer, print and turn on the iron. The board is double-sided; we make an envelope out of pages using a stapler. It turned out something like this, of course it was necessary to paint over some areas better with a marker. I chose ferric chloride for etching, although I know that it is full of other newfangled methods. It turned out so-so.























    And then fiercely messed up, mixed up the layers when printing, noticed only after the board was etched. Cut a new piece of PCB was laziness and in desperation I made vias. In vain I began to tinker with the tracks because sometimes there were pieces of foil on the tip of the soldering iron, without MGTF and it could not do. ROM for the cartridge as well as for Leningrad itself chose the EEPROM W27C512. To select the games (4 pieces of 16 kb each), I used the 74HC393 counter, so that when I press the RESET button, they would switch to DANDY in collections. But it was a bad idea, and as a result, I pulled out the counter and switched between two dip switches. Fill with hot-melt adhesive for rigidity of the soldering place of the 40 pin contact.





    The programmer at that time I already bought my own. Fill all the hits from Ultimate Play The Game including Jetpac. Of course, I later tried others, including games that never came out, such as Gyruss and Star Wars.





    We connect the drive


    Although I already have tape and cartridges as storage media, but of course the softest is the use of a floppy drive. The best games, such as Black Raven, UFO, are written under this medium: the enemy is unknown, and in the near future POWER BLADE will appear, in addition, almost all toys from the tape are ported to it. The download speed is 15-20 times faster than the downloads from the tape recorder, the volume of the 640kb formatted TR-DOS floppy disk, the profit is obvious. But the drive itself can not be connected to the Spectrum, you still have to collect half the spectrum - the controller of the floppy disk drive, aka KNGMD. I decided to take the scheme of this device from the zxbyte.ru site, like many other improvements to Leningrad.



    I decided to be realistic and I’ll probably work out a circuit for 15 microchips only by the next century, so I began to assemble it on a breadboard. Well, I really wanted to put the board in a compact case. The heart of the domestic drive controllers was the KR1818VG93 chip. Her disadvantage is quite significant, she required 12 volts and did not differ in reliability. Therefore, I ordered a chip analogue MB8877, which works fine and five. I don’t know, the Chinese sent me an original or a fake, but it works and it’s wonderful. Having chosen the KNGMD S-48 circuit, which was created for connecting to Leningrad and Baltic states, I ran into an unpleasant detail; on the reading node, the PLL logic was implemented on the K556RT4 EPROM chip, about which my Chinese programmer did not know. I tried instead to put the previously used W27C512, but either I messed up something, either there were problems in the EEPROM itself, but the floppy did not work, although I was already able to enter TR-DOS. Then I rebuilt the reading unit according to the Pentagon-128 scheme without a PLL and as a result the drive was able to format the floppy disk. By the way, standard high-density diskettes need to be sealed with holes in the corner so that they appear in the drive as double-density disks.





    What a relief to use floppy disks, after downloads, even accelerated from tape / phone. The KNMD scheme is simplified for me and can only work with two drives (in the same Pentagon and many other clones up to 4), although this is enough for the eyes. Having played enough with a 3.5 "drive, I wanted to get 5.25" and it worked without problems, by the way, I first touched five-inch floppy disks, they are so flexible, flexible, generally high. For convenience, I asked for a quick commander instead of the BASIC-128, it can play music and watch images and all sorts of file operations. I use the ZX Studio program to burn the TR-DOS disk image to the PC, and to build my own ZX Spectrum Navigator image.









    We watch demos


    Our demoscene developed mainly for the Pentagon-128 Spectrum clone, and due to the peculiarities of the circuitry, it had 71,680 clock cycles for drawing one frame, when the corporate zx spectrum had 69,888 clock cycles, and Leningrad only 65,184 clock cycles due to delayed response from the memory. For most games and other programs, this did not really matter, but not for the demos. Cut off the signal / WAIT and put it at + 5V. on the 9D5 leg we feed the earth instead of the signal / BC. But Spectrum multicolors may not work with Pentagon timings, so we’ll make a Spectrum / Pentagon jumper. With the CMOS version of the processor (Z84), this option did not work, but there are no problems with the U880. The computer did not receive 100% compatibility with the pentagon, but demos written for the pentagon now do not slow down. I really liked REFRESH, developed back in 1998.



    We work in SR / M-80


    Few clones could run this OS, you can recall BYTE-01, Quorum-64, ZS Scorpion 256, Pros. To work with SR / M, the computer must have support for shadow RAM. And since the ZS Scorpion 256 is a Leningrad at speed, there will be no big difficulties to refine it a bit. Download the scheme and study. Disabled ROM bit 0 of port # 1FFD as well as on spectrum +3, which out of the box had the ability to run SR / M. And bit 4 switches the 128kb pages. But with me bit 6 of port # 7FFD switches, which in some cases conflicts with programs, although I had a problem with only one demo. I had to redraw the expansion scheme to support port # 1FFD. Did it in paint, it turned out something like this.



    I don’t have any more space on the board, I regretted 100 times that I didn’t take the 20 * 30 board under the ATX case. Since we no longer use the 6 bits of port # 7FFD, the 1533TM2 chip is now superfluous, instead of it we put 1533TM9, on which we set 0 and 4 bits of port # 1FFD. We use a maximum of 1533KP12 in the expansion scheme, thereby freeing the necessary OR element for us. We check by pre-writing to the CP / M floppy disk from the scorpion kit. Works!



    It’s a little unusual to see CP / M with a gray background and black letters, but those who ported it apparently wanted similarities with their native BASIC-48. By default, the OS has 48kb of RAM and a 160kb RAM disk, it starts with 64 characters per line (3 pixels wide + space), which is not very readable but tolerable. The mode utility can be changed to 32, 40.48 and 80 (3 pixels wide without spaces, unreadable messy) characters required for most programs. Some clones had higher resolution modes, for example, Byte-01 with 512x192 mode, which made it quite suitable for working with CP / M. But the branded spectrum +3, scorpion 256, and most of the other clones did not have such happiness, which perhaps caused the OS’s unpopularity on the spectra. On the CP / M-80 itself, or rather its version 2.2 of 1979, you can write a separate article, I just go over the software.

    OFFICE

    Text editor WORDSTAR, very functional for editing text, one of the progenitors of MS WORD. Spreadsheets Varitab, a Soviet-Bulgarian development, very, very reminiscent of SuperCalc, whether it was translated into a great and mighty Western program, or made in the image and likeness, well, or there was some kind of licensing, I hope in the comments. There is also Varibt-86 for MS-DOS, many may have used it. Another MicroSoft Multiplan spreadsheet couldn’t start normally, it probably needed 25 lines instead of 24. Programming on CP / M is just a paradise for programmers, here are Turbo Pascal and C compiler, Fortran compiler, ADA language compiler, FORT language 83, assembler, MS BASIC, language translator PL / 1 and much more.











    Games

    Yes, there were games on the CP / M, mostly text quests, such as the ZORK trilogy, unfortunately I can’t evaluate them with my English level. Chess such as SARGON was also popular. But there were also action games, for example Ladder, a completely playable platformer. Clone PAC MAN. And what about without His Majesty TETRIS.



















    Epilogue


    As a result, it turned out to be a rather functional machine for retro and not very gaming, watching demos, listening to chiptune and other entertainments. The appetite comes with eating and thoughts arise to assemble a mouse controller, hard drive controller, COVOX, finally bring out the campston joystick according to the zx spectrum next standard, disperse the computer to 7 MHz ... but is it worth it?

    Also popular now: