First part hereAll 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 significantly expanded. I did not think that I would write its continuation, but still there were not so many articles on retrocomputers, so I decided.
')
Expansion port
A 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 more fit on the board, but after calculating the number of contacts I needed, that was enough. Minus one contact on a key, 2 contacts on + 5v, 2 contacts on the earth.


Keyboard in case
Earlier, I used an external keyboard, but I wanted a more authentic form factor. At the time of the assembly I drove Claudia from the Spectrum from the 90s with stickers. Ports for Sinclair joysticks and the RESET button fastened to it. The case is simple, cut out a rectangle in the case and fasten it to the board on the rack. The back part also had a little drank.

No download games
Cartridges for Spectrum we were not popular, unless you count the game console ALP. Not that they were popular in Europe, as they required an expensive device ZX Interface 2. Officially, only 10 games were released. The cartridge is just a ROM with a prerecorded game on the board with a set of contacts, so making this device is a snap. I have long wanted to try to erase the board and now is the case. But first, it must also be diluted, for this purpose I used the sprint layout program.

On the Leningrad board itself, only soldered the pull-up resistor to the 20th pin of the ROM and the pin itself brought to the expansion port. When the cartridge is connected, it will be fed + 5v and will turn off the computer's ROM. Well, contact / RDROM also brought to the expansion port. Well, the board is divorced, we cut a small square out of a piece of Soviet PCB.

We put a page from a glossy magazine in the printer, print and turn on the iron.

The board is double-sided, we make an envelope from the pages with 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, he messed up the layers during the printout, noticed only after the board was etched. A new piece of PCB cut was too lazy and desperate I made vias. In vain I began to tinker with the tracks, as sometimes there were pieces of foil on the soldering iron tip, without MGTF, and this was not done. The ROM for the cartridge, as well as for Leningrad itself, chose the EEPROM W27C512. For the selection of games (4 pieces of 16kb each) I used the 74HC393 counter so that when the RESET button was pressed, they would switch as in DANDY collections. But it was a bad idea and in the end I dropped the counter and made the switch with two deep switches. Fill with hot melt glue for rigidity soldering 40 pin contact.


Programmer at that time I already got my own. Fill all hits from Ultimate Play The Game including Jetpac. Of course, I later tried others, including games that were not yet released, such as Gyruss and Star Wars.


We connect the drive
Although I already have tape and cartridges as storage media, the softness of course is in the use of a floppy drive. The best games, such as Black Raven, UFO, are written under this carrier: the enemy is unknown, and in the near future POWER BLADE will appear, besides almost all toys from the tape have been ported under it. Download speeds are 15-20 times faster than downloads from a tape recorder, the volume of a floppy disk formatted in TR-DOS is 640kb, the profit is obvious. But the drive itself is not connected to the Spectrum, you will still have to assemble a half-room - a controller of a floppy disk drive, also known as CNLMD. The scheme of this device I decided to take from the site zxbyte.ru, like many other improvements of Leningrad.

I decided to be a realist and I’ll probably reconnect the 15-chip circuit only to the next century, so I started collecting it on a breadboard. Well, I really wanted to put the board in a compact case. The heart of domestic disk drive controllers was the KR1818VG93 chip. The disadvantage of it is quite significant, it required 12 volts and did not differ in reliability. Therefore, I ordered an MB8877 analogue chip, which works fine from five. I do not know the Chinese sent me the original or a fake, but it works and it is wonderful. Choosing the CNGMD C-48 scheme, which was created to connect to Leningrad and the Baltics, faced an unpleasant detail, on the reading node the PLL logic was implemented on the K556RT4 PROM chip, which my Chinese programmer did not know about. I tried replacing the previously used W27C512 instead, but either I’ve got something wrong, or there were problems in the EEPROM itself, but I didn’t work on the floppy, although I was already able to enter TR-DOS. Then I reassembled the Pentagon-128 reading node without the PLL and, as a result, the drive was able to format a floppy disk. By the way, standard high-density diskettes need to glue holes in the corner so that they appear in the drive as double-density diskettes.


What a relief to use diskettes, after downloads, even accelerated from tape / phone. The KNGMD scheme is simplified and can work with only 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 buy 5.25" and it earned without problems, by the way, I first touched five-inch floppy disks, they are so flexible, flexible, in general, a high. For convenience, I flashed instead of the BASIC-128 Quick commander, he knows how to play music and watch images and all kinds of file operations.

To write a TR-DOS floppy image on a PC, I use the ZX Studio software, and to build my own ZX Spectrum Navigator image.


Watch demos
Our demoscene developed mainly under the Pentagon-128 clone of the Spectrum, and by virtue of the circuitry features, it had 71680 cycles for drawing one frame, while 69x88 cycles were the company’s zen spectrum, and 65184 cycles were only for Leningrad because of the memory response delays. For most games and other programs, this did not really matter, but not for demos. Cut the signal / WAIT and put it on + 5v. on the leg 9D5 we feed the ground instead of the signal / BC. But Spectrum multicolor may not work with Pentagon timings, so we will make a jumper Spectrum / Pentagon. 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 the demos written for the pentagon no longer 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 the BYTE-01, Quorum-64, ZS Scorpion 256, Pro. To work with SR / M, the computer must have shadow RAM support. And since the ZS Scorpion 256 is Leningrad on the speeds, there will not be much difficulty in modifying it. We swing the
scheme and we study. Disconnects the ROM with bit 0 of port # 1FFD as well as at spectrum +3, which from the box had the ability to run CP / M. And bit 4 switches the pages by 128kb. I also switch bit 6 of port # 7FFD, which conflicts in some cases with programs, although I only had a problem with one demo. I had to redraw
the expansion scheme to support port # 1FFD. Did it in the paint, it turned out like that.

I no longer have space on the board, I regretted 100 times that I did not take a 20 * 30 board under the ATX case. Since we no longer use the 6 bits of the # 7FFD port, the 1533TM2 chip is now superfluous, instead we put 1533TM9, on which we start 0 and 4 bits of the # 1FFD port. We use the maximum of 1533KP12 in the expansion scheme, thereby freeing the necessary OR element. We check by writing to the CP / M diskette from the scorpion kit. Works!

It is a bit unusual to see CP / M with a gray background and black letters, but those who ported it apparently wanted similarities with the native BASIC-48. By default, the OS has 48kb of RAM and a 160kb RAM disk, it starts up with 64 characters per line (3 pixels wide + space), which is not very well readable but tolerable. Utility mode, you can change to 32, 40.48 and 80 required for most programs (3 pixels wide without spaces, unreadable space) characters. Some clones had high resolution modes, for example, Byte-01 with 512x192 mode, which made it quite suitable for working with CP / M. But the brand spectrum +3, the scorpion 256, and most other clones did not have such happiness, which probably caused the unpopularity of this OS on the spectra. About the CP / M-80 itself, or rather its version 2.2 of 1979, you can write a separate article, I’ll just go over the software.
OFFICEText editor WORDSTAR, very functional text editing, one of the progenitors of MS WORD.

Spreadsheets Varitab, a Soviet-Bulgarian development, very much like SuperCalc, was it translated into a great and powerful western program, or made in the image and likeness, well, or there was some kind of licensing, I hope in the comments will prompt. There is still Varitab-86 for MS-DOS, it may have been used by many. I’m not able to start another Multiplan spreadsheet from MicroSoft, maybe it took 25 lines instead of 24.
ProgrammingOn CP / M is just a paradise for programmers, here you can find Turbo Pascal and C compiler, Fortran compiler, ADA compiler, FORT-83 language, assembler, MS BASIC, PL / 1 translator and much more.
GamesYes, there were games on CP / M, mostly text quests, such as the ZORK trilogy, unfortunately with my level of English I cannot evaluate them.

Chess was also popular, such as SARGON.

But there were also action games, for example, Ladder, quite playable platformer.

Clone PAC MAN.

And what about without His Majesty TETRIS.

Epilogue
The result was a fairly functional machine for retro and not very gaming, watching demos, listening to chiptune and other entertainment. Appetite comes with eating and you have thoughts to assemble a mouse controller, a hard disk controller, COVOX, finally bring the Kempston joystick according to the zx spectrum next standard, overclock the computer to 7 MHz ... but is it worth it?