Home Page
Posted By: shattered ex- USSR and Soviet Bloc hardware - 06/04/12 05:09 PM
Someone asked Haze about emulation status of terminal that Tetris originally ran on -- http://mamedev.emulab.it/haze/2012/05/31/emulation-status/#comment-22334

It's the "Электроника 15ИЭ-00-013" (transliterated: 15IE-00-013), and is not emulated. There's a technical manual, not sure if ROMs are already dumped.

Photo of the terminal (top unit is the machine it's connected to): http://www.leningrad.su/museum/show_calc.php?n=283

Photos of the board set: http://asvcorp.ru/darch/hardware/pdp/fryazin-display/index.html (from top to bottom: CPU, program ROM, character generator ROM, RAM, I/O board).

Technical manual: http://t-book.net/retrovt/213-to15ie00013.html (there's a separate manual for the keyboard, it's not included)
Posted By: Micko Re: ex- USSR and Soviet Bloc hardware - 06/04/12 05:25 PM
Well it should be Elektronika-60 as main machine and this one as terminal.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/04/12 05:35 PM
15IE CPU specs, from the manual:

- 3.08 MHz clock
- 32 12-bit registers (2 pages of 16)
- 12-bit program counter
- 8-bit accumulator
- flags register (6 flags)
- 32-word 16-bit-wide microcode ROM (dump provided in the manual)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/04/12 07:18 PM
Originally Posted By Micko
Well it should be Elektronika-60 as main machine and this one as terminal.


Right, and instead of E60 there could be another PDP-11 clone, possibly a DVK (roughly translated as 'Interactive Computing System') -- a desktop. In fact, it's a DVK in the photo.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/04/12 08:04 PM
Electronika MS-1502 (transliterated name), 'mc1502' driver.

Not quite a PC XT, not quite a PCjr -- designed to be cheap like the latter, but has none of its extensions (no fancy sound or 16-color mode).

What's it like:

- Has single 16 MHz crystal, thus the CPU and timer clocks are higher (5.33 and 1.33 MHz).
- No DMA.
- No keyboard controller, key matrix is connected to second i8255.
- Base system has 128K memory on board (96K available to the user); with the expansion installed, user memory is 608K, not 640K.
- CGA implementation has more video memory (32K), which is shared with system memory; there is space for 4 fonts in the chargen ROM, but only one is present (at 0).
- Has two cartridge slots for expansion. There are at least three (extra 512 KB of memory, a BASIC ROM and a FDC).

These are incompatible on the low level, but have compatible BIOS interfaces:
- FDC -- uses a FD1793.
- Serial port -- uses a i8251.
- Parallel port.
- Cassette interface.

Software: SF-DOS ('Sigma Four', a MS-DOS clone); OTS ('One Track System', an OS for 128KB systems). Base system shipped software on cassettes.

Pictures and manuals: http://comp.disneyjazz.net/index.html?action=w_podrazdela&id_soderjanie=74

MESS screenshot (with my fixes; will send them to Micko):

Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/04/12 08:46 PM
Very nice!
Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 06/05/12 03:46 AM
Spasibo bolshoe. smile
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/05/12 04:11 PM
Speaking of Soviet hardware, I understand the Agat-7 (Агат-7) is another "not really Apple II compatible" (the video modes seem to be quite different from the real A2, among other things). Can anyone direct me to any kind of technical information? smile

Also, I'm fairly certain the existing floppy controller ROM dump isn't actually for the Agat-7 as it JSRs to a Monitor ROM routine that doesn't exist on the Agat-7 (but does on the Agat-9 and on real Apples).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/05/12 05:18 PM
There's a whole lot of everything on Agat machines here: http://deka.ssmu.ru/er/agat/Intro/ (mirror: http://deka18.tsk.ru/er/agat/Intro/)

Yes, the 7 is not an exact clone, and Apple games were reworked to run on it. Screenshots: http://deka.ssmu.ru/er/agat/Gamez/Gamez.shtml

ROM dumps: http://deka.ssmu.ru/er/agat/Hard/roms.shtml

FDC ROMs: http://deka.ssmu.ru/er/agat/Hard/roms/pereph.rar

There were two controllers versions, newer one did indeed use non-7 routine.

The text following http://deka.ssmu.ru/er/agat/Hard/roms/sys7.zip says that system ROM (...SysMon7.bin) was modified by the site's owner.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/05/12 06:55 PM
ES-1841 (transliterated name), 'ec1841' driver.

A clone of PC XT, in different form factor -- 7-slot passive backplane, no ISA connectors; bus signals are the same. Can be expanded just like XT, using a pair of transmitter/receiver cards. Either MDA or CGA video.

Other changes:
- No memory on CPU board; memory boards are divided into banks, failing banks can be disabled.
- Always ships with a MFM hard drive; relevant routines are included in main BIOS.
- Custom mouse controller.
- Custom dual-port serial controller.
- Custom LAN controller (might be Token Ring).
- Character generator is changeable (INT 10H, AH=11H)
- Keyboard has extra keys to switch the layout.

Apparently there was a speech synthesis card, but not much is known about it. Probably used this TMS5100 clone: http://www.155la3.ru/k1803.htm

Quick reference manual and BIOS listing: http://zx.pk.ru/attachment.php?attachmentid=35804&d=1338407315

Technical manual haven't been found yet.

Software samples -- Alpha-DOS (localized MS-DOS clone; plain DOS works too), TPS (diagnostics), demo disk: http://zx.pk.ru/attachment.php?attachmentid=35911&d=1338919944

M86 (CP/M-86) was also distributed with the machine, no good copies were found yet.

MESS status -- POST fails memory test (probably due to unemulated memory controller) and hard disk test (because HDC is not configured in the driver); these can be ignored. Boots into DOS and is somewhat usable (Shift keys don't work, and you have to use MESS debugger to switch to Latin layout). Keyboard ROM or MCU is not dumped yet. Tests from the TPS disk mostly fail, too. The demo disk works, though :-) If you run it, answer 'l' at first prompt (it asks if you have a color monitor).

Debugger trick is 'do b@418 = 2'.

Screenshots:

POST failure (press F1 here)


Alpha-DOS -- MODE, LABEL, and CHKDSK commands


Demo disk, intro


Demo disk, intro


Demo disk, graphics demo
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/11/12 01:21 PM
Besta series (Besta-88 and Besta-90) of engineering workstations. Former was a deskside model, latter a desktop.

Design was apparently licensed from Force Computers GmbH (SYS68K series).

These were 68020- and 68030-based graphics workstations with VME bus. Ran mostly UNIX (System V R3.1), OS9 apparently was in use too. Linux 2.0 was ported much later, by a customer.

No known emulator. Lots of unemulated chips -- 68230 PIT, 68561 MPCC, 62421 RTC, 6850 ACIA, Intersil ICM7170 ...

Graphics cards were optional, the machines could be run headless (with up to 24? directly connected serial terminals).

Wikipedia: http://en.wikipedia.org/wiki/Besta_(computer) (not much there)

Technical manuals, Linux port (binary and source): http://ftp.stu.neva.ru/besta/

Pictures: http://picasaweb.google.com/areytman/Besta and http://fotki.yandex.ru/users/bushjr/album/53018

Linux booting: http://fotki.yandex.ru/users/shattered/view/467341
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/11/12 02:54 PM
Nice! Are there dumps?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/11/12 05:03 PM
None that I know of, but I do have access to these machines and spares. Will see if these can be dumped easily.
Posted By: Just Desserts Re: ex- USSR and Soviet Bloc hardware - 06/11/12 05:15 PM
Originally Posted By shattered
None that I know of, but I do have access to these machines and spares. Will see if these can be dumped easily.


Please make sure that you check for any ROMs on the graphics boards as well. Although the CPU boards most likely have the boot ROMs, it's likely that there is some sort of graphics microcode, too.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/11/12 05:49 PM
Will do. The manuals say that SCSI controller and multi-port serial cards have ROMS too -- SCSI card has a 68010 that drives a NCR 5386S, and serial card's 68562 chips are also driven by 68010.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/11/12 07:46 PM
There are dumps after all, here. These are from CP31 CPU board (68030@33 Mhz + 68882). Quick memory map:

68230 PIT $FF800C00
68561 MPCC $FF800000
62421 RTC $FF800A00
68230 PIT2 $FF800200
32KB 0ws SRAM $FF04xxxx..$FF07xxxx
256KB EPROM $FF00xxxx..$FF03xxxx

CP31 manual says that ROM is initially mapped at 0, and the mapping is reset by writing anything to this address.
Posted By: Robbbert Re: ex- USSR and Soviet Bloc hardware - 06/11/12 11:01 PM
Be careful with that link... Firefox prevented the site from installing software on my computer... and I wasn't able to download any roms.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/11/12 11:02 PM
I was able to get the roms, but it was a bit tough.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/12/12 06:02 PM
I'll use another file host then. Is zx.pk.ru OK?
Posted By: Kaylee Re: ex- USSR and Soviet Bloc hardware - 06/12/12 06:37 PM
could you use goput.it
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/12/12 07:40 PM
OK -- http://goput.it/x6g.zip (besta_rom.zip)
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/12/12 07:42 PM
Like I said, I was able to get the roms the first time so reposting wasn't really necessary smile

ETA: and the odds of Not Me(tm) writing a driver for a 680x0+MMU+FPU are roughly zero, with dueling 5% chances of Olivier and Hans ;-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/12/12 07:52 PM
(fingers crossed) :-)

OK, I'll go find other interesting hardware -- there's a triple-CPU system called Istra-4816 (one i8086, two i8080's) that could run DOS and CP/M concurrently (second 8080 acted as an I/O processor, I think).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/19/12 07:22 PM
Irisha -- yet another i8080-based school computer, a backplane-based design. This one never went into mass production. Apparently processor board could be replaced with i8086-based one, and peripherals were designed to be somewhat compatbible with IBM PC.

MESS status -- skeleton driver, working keyboard but no peripherals (cassette, floppy, game ports), incomplete video implementation (it's CGA-like, with 320x200 and 640x200 modes), memory banking not emulated etc.

Other emulators -- Bashkiria-2M (has most of the above).

Technical manual (has ROM dumps, schematics, PCB layouts) -- http://emuverse.ru/downloads/computers/Irisha/docs/Irisha%20Personal%20Computer.djvu

Software: not found/dumped yet. Apparently there was a CP/M port.
Originally Posted By R. Belmont
Like I said, I was able to get the roms the first time so reposting wasn't really necessary smile

ETA: and the odds of Not Me(tm) writing a driver for a 680x0+MMU+FPU are roughly zero, with dueling 5% chances of Olivier and Hans ;-)


Actually finding out what the hell is going wrong with the MMU (if it's the MMU) that causes the segfault on install on NeXT would be just beautiful. More Unixy systems drivers may help there.

OG.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/21/12 02:30 PM
Agreed. Once the 5380's rewritten as nscsi it should be possible to try and run A/UX on the Mac driver (currently the bootloader comes up and can't see any SCSI disks), and I'm interested in bringing up sun3x too.

NetBSD dies on both X68030 and NeXT right now, that might be an easy way to find some MMU gremlins.
Posted By: Bronxie Re: ex- USSR and Soviet Bloc hardware - 06/21/12 02:46 PM
Hi i was just wondering if you managed to find any software dumps for the Bashkiria 2m computer! i have some cpm disk dumps for that system well there supposed to be for it anyway. im interested in russian systems so if you know where i can find any good emulators or software for russian systems please let me know!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/21/12 08:38 PM
@Bronxie: There are some dumps in http://bashkiria-2m.narod.ru/files/disk/b2m.rar and http://bashkiria-2m.narod.ru/files/disk/b2m_new.rar

We have lots of emulators, what specifically are you interested in?
Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 06/22/12 07:02 AM
Originally Posted By Bronxie
Hi i was just wondering if you managed to find any software dumps for the Bashkiria 2m computer! i have some cpm disk dumps for that system well there supposed to be for it anyway. im interested in russian systems so if you know where i can find any good emulators or software for russian systems please let me know!


MESS driver
When the cursor start to blink then press any key.
CP/M will boot now from the disk.

PS: Here a old screenshot.
Posted By: mahlemiut Re: ex- USSR and Soviet Bloc hardware - 06/22/12 08:19 AM
Originally Posted By R. Belmont
NetBSD dies on both X68030 and NeXT right now, that might be an easy way to find some MMU gremlins.


NetBSD/x68k should get further when the MB89352 is re-written to use nscsi. Volunteers are welcome. smile
Originally Posted By mahlemiut
NetBSD/x68k should get further when the MB89352 is re-written to use nscsi. Volunteers are welcome. smile


Is there an howto-boot-or-install-the-thing around?

OG.
Posted By: mahlemiut Re: ex- USSR and Soviet Bloc hardware - 06/22/12 01:06 PM
Originally Posted By Olivier Galibert
Is there an howto-boot-or-install-the-thing around?

OG.


There is a bit of difficulty in creating the disk images, in that MESS can't create the DIM/2HC format than NetBSD requires for floppies. XM6 can create blank ones, then MESS can use the Human68k version of rawrite to create them, if need be, but here are the pre-made install floppies for NetBSD 5.1 - http://mahlemiut.marpirc.net/bsd51boot.zip

NetBSD/x68k 5.1 ISO - http://ftp.netbsd.org/pub/NetBSD/iso/5.1/x68kcd-5.1.iso

Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 06/22/12 02:47 PM
A 1GB Harddisk image should be big enough to install the complete NetBSD 5.1 with X11.

The Harddisk image must be formatted under Human68k as single partition.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/22/12 03:04 PM
MB89352 should be fairly easy to convert to nscsi given it's already a C++ device and it's using scsibus.c so it already deals in low-level bus signals.
Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 06/22/12 04:19 PM
OG, I made a description how do format a SCSI HardDisk under Human68k. smile

DL: Word document
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/23/12 10:24 PM
Originally Posted By Just Desserts
Originally Posted By shattered
None that I know of, but I do have access to these machines and spares. Will see if these can be dumped easily.


Please make sure that you check for any ROMs on the graphics boards as well.


A bit of good news -- the graphics board uses a HD63484. No new dumps, though.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/25/12 08:59 PM
Poisk-1 (literally, Search-1) -- another cheap PC workalike with integrated keyboard. This one is even less compatible -- it has CGA-like video, but doesn't have a text mode (nor a MC6845) and uses a hardware+BIOS hack to make existing programs work -- access to video memory and registers causes a NMI. There were two motherboard revisions (with 128K and 512K of memory) and six 'system models'.

CPU clock is higher (5 MHz), there's no DMA and no keyboard controller.

Motherboard has only a cassette port (and no ROM BASIC), but has 4 expansion slots and plenty of options:
- RAM expansion with and without a printer port
- serial + parallel port
- floppy controller (driven by a FD1793 clone)
- MFM HDD controller (driven by a WD1010 clone)
- IDE HDD controller
- mouse, joystick controllers
- software modem (2400 baud)
- PROM programmer
- sound card
- ROM cartridges

MESS status -- has dumps, machine description is totally wrong.

Technical manual -- http://web.archive.org/web/20070108082522/http://www.poisk-computer.net.ru/txt/poiskto.txt (no keyboard schematic there)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/02/12 06:27 PM
UK-NC -- school computer (was not available in stores). Two CPUs (second CPU used for I/O, sound etc.) with PDP-11 instruction set, color graphics, sound, integrated keyboard, serial networking. Teacher's workstation also had dual 5" floppy drives, printer, and (sometimes) color monitor; several RT-11-derived operating systems were available, and lots of commercial educational software.

Had its own trade magazine and plenty of games (not sure if there were originals, but definitely a lot of ports).

MESS has a very skeletal driver (uknc), but two other (fairly accurate) emulators exist -- open-source UKNCBTL (http://code.google.com/p/ukncbtl/) and closed-source EmuStudio (http://zx.pk.ru/showthread.php?t=18027). The latter also emulates graphics controllers of earlier DVK desktop (more on that later) -- as the author says, he wrote the emulator just to play LAND (sort-of like Lode Runner) :-)

Technical manual: http://comp.disneyjazz.net/biblioteka/0113.djvu

CPU technical manual: http://zx.pk.ru/showthread.php?t=17284 and http://www.felixl.com/1801VM2SPECS.zip
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/02/12 06:37 PM
To clarify: both UK-NC CPUs are PDP-11 instruction set?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/02/12 07:16 PM
Yes, both are KM1801VM2. All of the 1801VMx use this set, but they're not complete clones of anything DEC -- more like reimplementations.

Here's an attempt to reverse-engineer 1801VM2's microcode (optically) -- http://code.google.com/p/ukncbtl/wiki/Microcode
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/05/12 02:16 PM
Here's sort of the reverse of this topic, scans of the booklet from a circa-1988 Soviet exhibition of US home computers, mostly Apple IIs and IBM PCs (there's even company histories of Apple and IBM, I think - wish I could read Russian).

http://picasaweb.google.com/svofski/InformationUSA
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/05/12 09:25 PM
heh, svofski is a known cyberpunk :-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/06/12 05:26 AM
... one of his creations is the "Glass TTY VT220" font -- http://sensi.org/~svo/glasstty/
Posted By: Just Desserts Re: ex- USSR and Soviet Bloc hardware - 07/06/12 12:41 PM
One interesting outgrowth of all this is that while I may not be able to read Russian, I'm at least learning what Cyrillic characters sound like phonetically. smile
Posted By: Vas Crabb Re: ex- USSR and Soviet Bloc hardware - 07/07/12 02:54 AM
His font only has Russian Cyrillic, so I get ugly substitutions from another font for Serbian Cyrillic characters that don't occur in Russian frown But besides that, it's a nice font to use for a terminal session here and there.
Posted By: Micko Re: ex- USSR and Soviet Bloc hardware - 07/07/12 07:29 AM
Vas Crabb: Right out cyrillic is a bit different, we have 30 letters, and interesting thing about our language is that you write as you speak so no things like in English that you need to learn how do you spell words smile since it's always 1:1.

But main question is why would you need terminal font for Serbian cyrillic smile ?
Posted By: Vas Crabb Re: ex- USSR and Soviet Bloc hardware - 07/07/12 09:16 AM
Because I have a number of Serbian friends, and I can actually read/write Serbian to some degree, and I use mutt as a mail client, which runs in a terminal session. I also need C/J/K characters in my terminal font, but I don't think the VT220 ever supported them, so I'm not too upset about substitutions there. It's just disconcerting when most of the Cyrillic is in VT200 font, and just an occasional character is substituted.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/07/12 10:54 AM
Well, just add them :-)
Posted By: Vas Crabb Re: ex- USSR and Soviet Bloc hardware - 07/07/12 11:14 AM
Hey, that sounds like "effort" ;-)
Posted By: Micko Re: ex- USSR and Soviet Bloc hardware - 07/07/12 05:31 PM
Nice, have to say I am bit suprised. If you need some "reading material" on Serbian language please contact me smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/10/12 09:01 PM
It looks like mc1502 uses same cassette format as ibm5150 (and probably the same BIOS code):



Tape dumps are at http://www.pk-info.ru/ms1502/files/ but 3 of 4 are corrupted (truncated?). "Tape13" is OK, and is the one in the screenshot.

Cassette input in mc1502 itself doesn't yet work.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/12/12 07:18 PM
...it does now. IBM diagnostics' loader loads fine :-)


Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/12/12 07:43 PM
Nice! smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/21/12 06:21 PM
With a bit of hackery, mc1502 how has diskette I/O. This machine had the usual cloned MS-DOS (nee Sigma-Four DOS) and something original called OTS (One Track System), for low-memory (128K) machines. DOS runs, OTS boots but hangs.

I found some games and put them in a 720K disk (default format for this machine). Also included is the 'Immortal Player' (ip73.com) -- a kind of Action Replay for 73 games of 1980s:

Disk: http://goput.it/3x1.zip

ANTIX.COM, ARKANOID.COM, AV.EXE, BILLIARD.EXE, COLUMNS.EXE, DIG.EXE, GAPPER.EXE, GO-MOKU.COM, GOODY.COM, IP73.COM, KICKS.COM,
LIVING.COM, NINJA.EXE, PENTIX.EXE, PUSHER.EXE, SOKOBAN2.EXE, TET.EXE, TOWER.EXE


Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 07/22/12 03:26 AM
The screenshot remember me on the good old NC. smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/22/12 07:17 PM
I wrote a very skeletal driver for Besta (68030 + console ports) and possibly found a bug in m68000 cpu core:

fmove_rm_reg: unknown constant ROM offset 3f at ff00ff1c

The command at that offset is 'fmovecr #$3f, fp0'
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/22/12 10:42 PM
Huh, I thought I'd implemented all the ROM constants. Will check what 3f is.
Posted By: Stiletto Re: ex- USSR and Soviet Bloc hardware - 07/23/12 02:51 AM
Originally Posted By shattered
Also included is the 'Immortal Player' (ip73.com) -- a kind of Action Replay for 73 games of 1980s


Holy crap I think I remember that. Nostalgia bomb! laugh
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/23/12 03:18 AM
Try now. Don't know why they're loading 1.0e4096 exactly, but smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/23/12 04:56 AM
Yep, no crash now.

It looks like a CPU test in the POST sequence:

cp31dsspboot ROM -- loops looking for some VME device after 'BIM ERROR' message


cp31dbgboot ROM -- boot menu

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/02/12 08:51 PM
Found some Force Computers manuals at mvme.com, could be useful.

In particular, CPU-30 rev.4 manual describes the 68230 PIT
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/14/12 09:37 AM
Originally Posted By shattered
With a bit of hackery, mc1502 how has diskette I/O. This machine had the usual cloned MS-DOS (nee Sigma-Four DOS) and something original called OTS (One Track System), for low-memory (128K) machines. DOS runs, OTS boots but hangs.


Apparently, all existing dumps of OTS are bad -- there were extra tracks on original disks and boot loader is looking for them.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/03/13 12:26 PM
Originally Posted By shattered
UK-NC -- school computer (was not available in stores). Two CPUs (second CPU used for I/O, sound etc.) with PDP-11 instruction set, color graphics, sound, integrated keyboard, serial networking. Teacher's workstation also had dual 5" floppy drives, printer, and (sometimes) color monitor; several RT-11-derived operating systems were available, and lots of commercial educational software.


Hackers over at zx.pk.ru [1] have found a hidden/poorly documented color mode (8 fixed palettes of 8 colors at low and high intensity, selectable for individual scan lines) and there's talk of porting/writing games for this hardware :-)

[1] http://zx.pk.ru/showpost.php?p=570148&postcount=80

Mock-up screenshots:



Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 02/03/13 02:53 PM
That's a nifty hack smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/05/13 06:10 PM
And I think they're serious about porting Mario...
Posted By: F1ReB4LL Re: ex- USSR and Soviet Bloc hardware - 02/05/13 07:51 PM
They "port" the screenshots, not the actual games, just to demonstrate the palette.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/06/13 05:44 AM
I was talking about another forum thread -- http://zx.pk.ru/showthread.php?t=20758 (yes, I know that forum talk is cheap)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/11/13 07:29 PM
Some kind soul dumped keyboard ROMs from iskr1030 and ec184x.

iskr1030 -- uses a i8035 clone, ROM dump: http://chukaev.ru54.com/firmware/i1030.zip, pics: http://ru.pc-history.com/klaviatura-pevm-iskra-1030.html, schematic: http://ru.pc-history.com/wp-content/uploads/Shema_klaviaturi_ISKRA-1030.jpg

ec184x -- "EC1841\1816BE48.BIN" attached to forum post http://zx.pk.ru/showpost.php?p=303758&postcount=83 (1816BE48 is a clone of i8048)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/17/13 03:20 PM
Originally Posted By shattered
Someone asked Haze about emulation status of terminal that Tetris originally ran on -- http://mamedev.emulab.it/haze/2012/05/31/emulation-status/#comment-22334

It's the 15IE-00-013, and is not emulated. There's a technical manual, not sure if ROMs are already dumped.


Program ROMs (three versions) have been dumped [1], and disassembly looks sane [2]. Now to write CPU core...

[1] http://zx.pk.ru/showpost.php?p=577018&postcount=21
[2] https://gist.github.com/shattered/4971416
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/10/13 11:40 AM
... and here's a WIP screenshot of an emulated 15IE talking to chargen TCP service:



Now to locate the original Tetris...
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/10/13 02:18 PM
Nice! smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 04/12/13 05:06 PM
I'm still not done with 'ie15' driver (WIP code is at [0]), but two other emulator writers stepped in. EmuStudio [1] and Bashkiria-2m [2] (both multi-system emulators) now support this terminal. The details of video emulation are still being worked on by all of us (there's a 'snow' effect that seems to happen on real hardware as well -- see [3]).

[0] https://gist.github.com/shattered/5232006
[1] http://zx.pk.ru/showthread.php?t=18027
[2] http://bashkiria-2m.narod.ru/emul.html
[3] http://youtu.be/O0gAgQQHFcQ?t=2m23s
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/04/13 10:22 AM
Recorded a demo disk that was bundled with ec1841:

http://youtu.be/1pj-CVIMgn4

The disk itself is #001 in http://zx.pk.ru/attachment.php?attachmentid=35784&d=1338309524
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/10/13 12:27 PM
Submitting some of my WIP:

https://gist.github.com/shattered/5553841 pc: remove unused ibm5150_ppi8255_interface
https://gist.github.com/shattered/5553934 mc1502: FDC xtal freq is 16 MHz
https://gist.github.com/shattered/5553938 pc, ec1841: unbreak DBG_LOG macro

https://gist.github.com/shattered/5553942 asst128: another PC XT clone
https://gist.github.com/shattered/5553951 ec1841: add softlist, set 'v2' as default BIOS to avoid resets
https://gist.github.com/shattered/5232006 ie15: new driver: 15IE-00-013 serial terminal

ROMs/software/notes:

http://www.sendspace.com/file/j5yhdo asst128 ROMs
http://www.sendspace.com/file/jyixpz ie15 ROMs
http://www.sendspace.com/file/tayxzu ec1841 software

http://ru.wikipedia.org/wiki/%D0%90%D1%81%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BD%D1%82-128 brief article on asst128
http://ru.wikipedia.org/wiki/15%D0%98%D0%AD-00-013 brief article on ie15

asst128 needs work -- it's unclear if it has the DMA chip, f.e., but the BIOS at least displays the startup logo:


ie15 also needs work -- native keyboard is not hooked up, video emulation is a bit inaccurate, and it abuses the bitbanger.

ec1841 software is working -- f.e. the tests on "tps-2.2.14" disk are useful to find emulation bugs; at the moment the CPU test fails due to some DMA breakage).
Posted By: etabeta78 Re: ex- USSR and Soviet Bloc hardware - 05/10/13 01:28 PM
minor comment about the softlist: shortname should actually be short wink
we enforce at most 8 chars, with no - nor . allowed

I suggest to run -valid on the compiled exe to capture this kind of issues

but other than that, great job! smile
Posted By: LoganB Re: ex- USSR and Soviet Bloc hardware - 05/10/13 02:20 PM
Major comment about the softlist: the roms have the same sha-1 but different crc32 hashes compared to the roms from the link. The only one that has the right crc32 is "demo". What did you use to calculate the crc32 hashes?

Here's a fixed version smile.
http://www.sendspace.com/file/qhiklp
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/10/13 03:41 PM
I used the NetBSD's cksum command.
Posted By: etabeta78 Re: ex- USSR and Soviet Bloc hardware - 05/10/13 04:10 PM
isn't there also a crc32 command? that would give you the correct CRC32 (not sure which algorithm cksum uses, but I can confirm it gives the wrong results smile )
Posted By: judge Re: ex- USSR and Soviet Bloc hardware - 05/10/13 04:14 PM
I use unzip -lv a lot wink
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/10/13 04:14 PM
Well, the manpage claims it's "Default CRC algorithm"... Different polynomial, maybe?
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/10/13 07:22 PM
Originally Posted By shattered
asst128 needs work -- it's unclear if it has the DMA chip
It does tickle the DMAC at the start but it seems to just disable it then use PIO to read the floppy boot sector. The read works but the BIOS decides it failed and tries to load ROM BASIC which is missing.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 05/10/13 07:24 PM
That's weird. How does it decide it failed? smile
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/10/13 07:26 PM
Dunno, it returns 0x20 which according the interrupt list is "controller failure".

Edit: It looks to have some non-standard use for bit 7 of the dor. It reads one sector then toggles that bit. It then looks for the FDC to be waiting for data (rather than sending it).

Edit: I bet bit 7 sets the tc line.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/11/13 03:16 AM
After further review, rather than skipping every other cylinder, like I put in the commit, it looks to be treating the disk as having one side but double the number of cylinders. By that I mean when it wants to read cylinder 0 head 1 the BIOS tells the FDC it wants cylinder 1 head 0 or for cylinder 5 head 1 it asks for cylinder 11 head 0 and so on. I'm not sure of the cleanest way to emulate that.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/11/13 05:27 AM
Maybe it's designed for single-sided 80-track drives -- these did exist 'over here'.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/11/13 01:03 PM
Conveniently, Curt just added a single side quad density drive type.
Using that I get this:

A look in the frame buffer shows DOS is running, it's missing the font.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/11/13 01:28 PM
It's probably located at offset 0, like in mc1502.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/11/13 02:45 PM
The cga font rom region is empty so I borrowed one from IBM.

I did find some glyphs in the f4000 rom.

An unusual layout though.


Edit: found the rest
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/11/13 03:01 PM
That's 'primary' encoding defined by GOST 19768-87 -- http://ru.wikipedia.org/wiki/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0

It was sufficiently unpopular that most everyone used 'alternative' encoding (now known as CP866).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/11/13 09:50 PM
An owner of this machine confirmed that is has no DMAC. More dumps surfaced, I'll check them for dups & submit.

Also, with a bit of hackery, I got poisk1 to display something (wrong resolution, though). There's still a lot work to do (hook up the keyboard, at least):


Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/12/13 12:00 AM
The DMAC can probably be removed from the machine config then. Can the owner confirm whether it has 80 track 5.25 floppy drives and if they are single or double sided?
Posted By: etabeta78 Re: ex- USSR and Soviet Bloc hardware - 05/12/13 04:58 AM
Originally Posted By shattered
An owner of this machine confirmed that is has no DMAC. More dumps surfaced, I'll check them for dups & submit.

Also, with a bit of hackery, I got poisk1 to display something (wrong resolution, though). There's still a lot work to do (hook up the keyboard, at least):




let me say that you're doing a great job here! smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/12/13 06:18 AM
Originally Posted By crazyc
The DMAC can probably be removed from the machine config then. Can the owner confirm whether it has 80 track 5.25 floppy drives and if they are single or double sided?


Asked him. Note, this is a 'pc-in-a-keyboard' machine, so the drive was external.

Pics: http://ru-oldpc.livejournal.com/26180.html

The specs in that post say that cassette interface had motor control (other clones don't have that luxury).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/12/13 06:43 AM
Originally Posted By etabeta78

let me say that you're doing a great job here! smile


Thanks. This clone is unique among others -- its video controller is almost, but not quite, entirely unlike CGA: it doesn't use a mc6845, always runs in graphics mode, but you still can set a text mode via standard CGA ports. Any access to those (and video memory in text mode) causes a NMI, and its service routine does the rest.

Fortunately, there is BIOS source (that doesn't quite match the binaries) and technical manual (for a pre-release hardware) and a set of schematics (for two different hardware revisions).
Posted By: Darkstar Re: ex- USSR and Soviet Bloc hardware - 05/12/13 08:54 AM
+1 for the Douglas Adams reference laugh

Anyway, I love seeing news about these obscure Russian clones turning up recently. It's like a whole new world waiting to be uncovered (and emulated wink )
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/12/13 09:39 AM
Oh yeah, there are at least two more PC clones unemulated:

- Istra-4816 -- triple-CPU (8086 + 2x8080), could run DOS and/or CP/M (concurrently). I have some of its software but no dumps. Wiki: http://ru.wikipedia.org/wiki/%D0%98%D1%81%D1%82%D1%80%D0%B0-4816
- Neuron I9.66 -- uses Multibus instead of ISA.

Before IBM PCs, there were others:

- Iskra 226 -- said to be a clone/reimplementation of Wang 2200
- Electronika D3-28 -- likewise, of Wang 720

This hardware is rare enough my now, but software is nowhere to be found; f.e. apparently there was a port of V7 UNIX to Iskra 226.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/12/13 07:41 PM
More WIP:

https://gist.github.com/shattered/5564625 softlist for mc1502
http://www.sendspace.com/file/990uey software

I had to hack wd_fdc.c, not sure how to do this cleaner. The reset routine (INT 13H AH=00) fails otherwise -- it waits for S_NRDY to clear and it never does.

How to use: press Enter twice after POST completes, at the '-' prompt enter '@'.

'ots' is a bad dump -- apparently the disk had 82 or more tracks, only 80 are dumped. It shows the logo, though.

'sfdos' is a good dump (it boots in ec1841), but doesn't boot here (fails to read 4 sectors starting at chs 0:1:6).
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 05/12/13 10:00 PM
Quote:
I had to hack wd_fdc.c, not sure how to do this cleaner. The reset routine (INT 13H AH=00) fails otherwise -- it waits for S_NRDY to clear and it never does.
Try commenting line 112 of wd_fdc.c and see if that fixes it (it fixed it for me but with an MS-DOS floppy).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/13/13 08:18 PM
Apparently something changed in last two months, because the hack is no longer needed, but 'sfdos' still doesn't boot.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/15/13 04:59 PM
asst128's BIOS I uploaded is not original, it was modified twice (once by whoever designed the 3rd-party floppy interface, and then by the owner). Second change NOP's this block of code:

-000FE1EE: BA 01 01 mov dx,101h
-000FE1F1: E8 14 03 call 0FE508h
-000FE1F4: FA cli
-000FE1F5: F4 hlt


Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/18/13 08:17 PM
...aaand there's yet another clone, PK88, apparently a predecssor of mc1502: http://fincoins.spb.ru/oldpc/pk88/pk88.html
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 05/18/13 09:40 PM
Send in the clones! smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/19/13 06:58 AM
I will. Here's how much we're missing: ru.wikipedia - clones

Some of them are very obscure and may not be original designs, just generic Taiwanese beige boxes.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 05/19/13 04:28 PM
Sorry, my bad, that's a native-speaker joke, not a command smile

"Send in the clowns" is a famous song.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/19/13 05:26 PM
Well, one learns something new every day smile

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/22/13 07:14 PM
minor progress with poisk1: some tests are running


«poisk1 WIP: p1_t_ram.rf4»


«poisk1 WIP: p1_t_i_o.rf4»
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 05/22/13 07:22 PM
Nice work. It's amusing to see a random English language stop sign on a Soviet-era machine that's otherwise in Cyrillic smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/22/13 07:29 PM
Well, it's international traffic sign smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/18/13 08:30 PM
poisk1: hooked up cassette input and parts of the keyboard, here it tries to load BASIC from tape (and ultimately fails).



Also, the mc1502 does not boot from disk now -- I think the 'reset PC by 1' hack in pc_state::mc1502_wd17xx_drq_r is no longer working.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/18/13 08:39 PM
There's no reason it shouldn't work, unless it needs to be "reset PC by 2" now or something smile
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 09/18/13 09:16 PM
Nah, it doesn't halt properly. I fixed it for the 186 and 286 but forget the 8086.

Edit: but that's not actually the problem, oops.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/18/13 09:30 PM
btw, support for output to tape is missing in ibm5150, mc1502 and other clones which have cassette port. I've added it just now to mc1502 (works fine), will check others too.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 09/19/13 02:23 AM
Found the real problem, fixed now.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/19/13 05:14 PM
Thanks. Does DOS actually boot for you? The `sfdos' from softlist doesn't ('Disk boot failure').
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 09/19/13 05:44 PM
It does but I have to patch wd_fdc.c by commenting out line 119 (seek_start(RESTORE)). Curt and OG seem to be sure the line is correct though.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/19/13 06:55 PM
Well, Curt and/or OG need to be sent a copy of the dos and asked what's up. Robbbert got pretty good results doing that smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/19/13 07:56 PM
http://www.sendspace.com/file/kyboqh -- softlist just in case

https://gist.github.com/shattered/6628920 -- mc1502 WIP (cassette output, printer WIP, serial WIP, minor keyboard fix)

BTW, PC drivers used to support .dsk image format but not anymore, any reason for that?
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 09/20/13 02:19 AM
The patch doesn't apply cleanly in drivers/pc.c. There's a stray "#if 0" in there.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/20/13 05:36 PM
Regenerated it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/20/13 07:21 PM
... and the actual reason why mc1502 did not boot is: reset pin is active low.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/20/13 07:43 PM
Ahh, /RESET instead of RESET? smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/20/13 08:01 PM
On the 1793, yeah smile `sfdos' boots now. `ots' boots too but is a bad dump (missing tracks 81+) and so doesn't work.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/24/13 10:32 PM
The /RESET fix etc: https://gist.github.com/shattered/6692200
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 09/25/13 02:20 AM
MS-DOS works and much quicker too.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/25/13 05:28 AM
I've seen random hangs in sfdos when programs quit to DOS (sometimes there's a lot of unmapped reads in the error log).

Also, is formatting supposed to work on wd_fdc?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/26/13 09:19 PM
https://gist.github.com/shattered/6720688 -- 3-channel sound support for apogee

Sample tunes to listen to: http://zx.pk.ru/showthread.php?t=21500 (in the player.rar attachment)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/27/13 05:38 PM
Sources for ec1841, poisk1 and poisk2 BIOS -- https://github.com/shattered/retro-bios

(Files are in koi8-r encoding.)
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/27/13 05:59 PM
That's a unique way to get 3 channel audio, summing 3 PIT channels as the input to a speaker smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/27/13 07:26 PM
Yeah -- if I'm reading the schematics correctly -- see sheet 2 of http://www.emuverse.ru/downloads/computers/Apogey/docs/Apogey_BK-01C_Schematics_Retouched.djvu

EDIT: actually, only channel 0 goes to the built-in speaker; the line out gets all 3 channels, summed.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/29/13 12:24 PM
ec1841 stuff:

https://gist.github.com/shattered/6751786 -- native keyboard
https://gist.github.com/shattered/6751887 -- DIP switches, memory banking

Keyboard dump: 1816BE48.BIN in http://eska.xost.ru/soft/1841rom.zip

Memory banking: the machine can hold 4 memory boards of 512K each. The API is very much like XMS INT 15h interface (AH=87H and AH=88H). VDISK.SYS in DOS-clone (ados0201 in the softlist) definitely can use it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/29/13 01:25 PM
At the moment ec1841 fails system board test (on the tps2214 floppy from softlist) -- it tests that DMA channel 0 counter is increasing and it doesn't.

Apparently this is because BIOS programs PIT first, DMAC second, and then resets DMAC [1]; but DMAC reset does not clear m_u73_q2 and further DMA cycles aren't triggered.

[1] code starting on line 4880 in https://github.com/shattered/retro-bios/blob/master/ec1841/ec1841.lst
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/29/13 02:26 PM
That's nice work, as usual. AFAIK the DMAC implementation is still pretty new so it's quite possible you've found an edge case.

ETA: both patches are in trunk now.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/29/13 04:55 PM
ec1841 is somewhat easier to work on since there's a technical manual and BIOS listing (but no schematics).

Speech synthesis card for this machine was finally found, complete with TM and schematics -- this one would be fun to emulate. Not much is known about it, but it's possible that it uses a TMS5100 clone: http://www.155la3.ru/k1803.htm
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/01/13 06:27 PM
iskr1030m keyboard uses MCS48's ENT0 CLK opcode, which is unimplemented in MESS -- any special reason why it was left out?
Posted By: judge Re: ex- USSR and Soviet Bloc hardware - 10/01/13 06:48 PM
Lack of test cases, I assume.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 10/01/13 06:48 PM
Most MAME/MESS CPU cores have opcodes implemented on an as-encountered-in-real-software basis. That way you know when you implement an opcode that you have an immediate test case for it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/01/13 08:14 PM
OK, so I guess I'll have to fix it :-)

Another thing -- I'm thinking of writing a driver for https://en.wikipedia.org/wiki/DVK and it's early revisions were just a SBC connected via serial port to a terminal (ie15). How do I connect two drivers this way?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/15/13 04:42 PM
i86 cpu core doesn't support some of the 8087 instructions (FINIT, FSTCW, ...) and FPU test in ec1841 fails.
Posted By: Curt Coder Re: ex- USSR and Soviet Bloc hardware - 10/15/13 04:47 PM
Originally Posted By shattered
iskr1030m keyboard uses MCS48's ENT0 CLK opcode, which is unimplemented in MESS -- any special reason why it was left out?


It enables output of system clock on T0 pin which would totally kill performance if a callback handler was attached to it. If it's wired to another CPU's clock input, just use the same clock in the machine config.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 10/15/13 04:53 PM
No FPU in the 8086 currently. A proper implementation would require a bit of work.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/17/13 07:28 PM
https://gist.github.com/shattered/7517008 -- minor WIP for besta, mc1502 and mikrosha.
http://www.sendspace.com/file/lblltk -- the new dump

A good dump of 'One-Track System' (works in mc1502, but apparently was designed for poisk1) surfaced (thanks to dk_spb) -- this is a weird, somewhat DOS-compatible OS, that fits on a single disk track (which is track 82 and therefore is missing from all existing dumps). Will softlist it soon:

Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 11/17/13 07:30 PM
That's awesome!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/17/13 07:33 PM
BTW, would anyone object if T11 core disassember switched to octal instead of hex? All of DEC's assemblers use octal, IIRC.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/27/13 08:35 PM
https://gist.github.com/shattered/7682631 -- replaces OTS with a good dump, adds a dump of M86 (CP/M-86 clone)
http://www.sendspace.com/file/9luqne and http://www.sendspace.com/file/gqx0z8 -- the software itself
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/29/13 11:10 PM
poisk1 WIP, displaying magic '3-color' text mode (background, foreground and alternate foreground).


This machine did not have a mc6845 but still managed to emulate most of CGA capabilities. Notably, it did not have a native text mode; when one is set via BIOS call, writes to lower half of video memory cause a NMI and ISR then draws pixels into upper half. Bit 7 in every character cell is magic and selects 'alternate foreground' color for that cell.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 11/30/13 02:04 AM
Nice work!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/30/13 03:32 PM
Thanks. pc.c is getting less and less maintainable though. Plus, to support option cards I'd need to add a bus, correct?
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 12/01/13 01:13 PM
Correct. And yes, pc.c needs systems which aren't 100% PC compatible to get moved out.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/17/13 07:57 PM
Yet another XT clone -- EC 1847, this one Bulgarian. There are ROMs, pics and brief tech manual here: http://zx.pk.ru/showthread.php?t=15239

Apparently this box has two ISA buses and internal bus expander, which we don't emulate and POST thus fails (code 1801). Will submit a skeleton soon.
Posted By: Darkstar Re: ex- USSR and Soviet Bloc hardware - 12/17/13 08:35 PM
I think that's a VME bus, not ISA
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/17/13 09:02 PM
AFAIK, that board form factor and connector type (Euromechanics?) is not 'owned' by any bus. Plus, the manual definitely describes an ISA bus.
Posted By: Matty Re: ex- USSR and Soviet Bloc hardware - 12/17/13 11:41 PM
That's not VME - doesn't have the signature VME release mechanisms on the backplates, the size of the cards looks different, and the spacing between the Eurocard connectors on the processor board is too close for 6U VME. There's nothing to stop you running ISA on Eurocard connectors like that except mechanical compatibility. But perhaps that's what they wanted - restrict people to buying their own, more expensive cards.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 12/18/13 12:21 AM
Well, I can easily imagine an Eastern Bloc machine not caring much about compatibility anyway. I mean, the Russians made an Apple II clone that has no chance in hell of running most actual Apple II software. Finding out stuff like that is exactly the sort of thing that I really enjoy about MESS.
Posted By: Matty Re: ex- USSR and Soviet Bloc hardware - 12/18/13 12:33 AM
Have to admit I enjoy reading the source more than actually running MAME/MESS these days. I have no time for emulating systems, but I really like looking at how they worked.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/18/13 05:58 AM
I suspect these boards were OEMd from some Taiwan manufacturer of industrial PCs, actually.

The Besta series was like that -- apparently they bought the license and production line for Force SYS68K series boards. Later revisions had some original designs though.

I am not an Apple II person but seem to recall that Bulgarians cloned it pretty faithfuly (the Pravetz 8) as opposed to Russians (Agat 7) -- there's a fan page that describes how Apple II games were hacked to run on Agat: http://deka18.tsk.ru/er/agat/Gamez/Gamez.shtml
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/21/13 06:22 PM
This draft diff (please review) -- https://gist.github.com/shattered/8072790
- moves ec184*, iskr103* and mc1502 out of pc.c
- moves CGA font upload support to a subclass
- adds new drivers: poisk1, ec1847, pk88
- adds a skeleton of native iskr103* keyboard
- adds more ROM revisions to existing drivers (how should I submit those?)
- etc.

Notes:
- ec1841 can work with isa_hdc.c but not out of the box (WRITESBUFF command is not implemented and other quirks). Will submit a diff later. Native HDC boards are not dumped yet (one version used a Z80 + clone of some XEBEC chip, another a 8089 + 8253 + smaller chips).
- poisk1 is still WIP. Keyboard, video and floppy work but changing disk in drive A: or accessing drive B: causes I/O errors in DOS. Its HDC uses a WD1010 clone but our emulation of it is still WIP.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 12/22/13 07:19 PM
Originally Posted By shattered
- adds more ROM revisions to existing drivers (how should I submit those?)

I'll take care of the patch. As for the ROMS post or PM me a link or send them to Tafoid at code (at) mamedev.org.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 12/23/13 02:45 PM
There are 2 "Demo disk" ec1841.xml, looks like a copy-paste error.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/23/13 04:37 PM
Yes, the second one should be 'M86 3.2 (modified CP/M-86)'
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/24/13 06:09 PM
XT-IDE driver works with poisk1 but requires a debugger hack, since poisk1 checksum routine is different. Assuming "v91" BIOS (the default), the hack is

bpset fee68,ds==c800,{do ax=0200;go}

Posted By: Lord Nightmare Re: ex- USSR and Soviet Bloc hardware - 12/24/13 07:46 PM
shattered: do the east europe xt clones with 'fake' cga do 'stretching' of the rightmost character gen pixel for character rows c and d, like the real ibm cga card does? that would fix the 'dashed' horizontal lines on the box drawing characters.

LN
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/24/13 08:27 PM
Not sure, as I haven't used them myself recently smile Will check if I have the chance.

Anyway, the dashed look on poisk1 is the artifact of its text mode emulation -- character cell is effectively 7x8. Here's photo of the real thing:
[img]http://zx.pk.ru/attachment.php?attachmentid=44295&d=1385639254[/img]
Posted By: MASH Re: ex- USSR and Soviet Bloc hardware - 12/24/13 09:41 PM
Hi,

i found the BASIC ROM for the Assistent 128 that needs dumping.
At http://vinxru.livejournal.com/204856.html there is a link to https://github.com/vinxru/Assistent_128
and the rom can you found here: https://github.com/vinxru/Assistent_128/blob/master/ROM/ROM_F400.BIN
Press on 'View Raw' to download ROM_F400.BIN.

ROM_F400.BIN:
0x0000 - 0x2000 = asf400-f600.bin (MESS)
0x2000 - 0xA000 ====> The new basic-1.10.rom (Version number at 0x6CC5)
0xA000 - 0xC000 = mainbios.bin (MESS)



M*A*S*H
Posted By: Anna Wu Re: ex- USSR and Soviet Bloc hardware - 12/25/13 04:08 AM
I think, some parts of the ROM_F400.BIN are used already by MESS. smile
Try to split the ROM and you will see.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/25/13 08:56 PM
Yes, but the new dump contains native BASIC ROM (current dump has a copy of IBM's BASIC). I'll sort this out.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/29/13 11:28 AM
... sorted: https://gist.github.com/shattered/8170700

This dump (ROM_F400.BIN) has 3 parts (mapped at F4000, F6000 and FE000), and two of them match other dumps (asf400-f600.bin, mainbios.bin). 3rd one contains ROM BASIC.

rombios7.bin + rombios8.bin have the same contents as mainbios.bin + asf400-f600.bin. I'm not sure there ever was a version without floppy support in ROM, even though the machine did not have a FDC out of the box.

vinxru's photos show a combo 1MB RAM+FDC board, and apparently there were separate RAM and FDC boards too (which would make little sense, since there's only 1 expansion slot and only 128K onboard RAM).

The patch also adds ROM cartridge dump for mikrosha, another HDC ROM for poisk1, and removes unnecessary dependency on iskr1031 chargen ROM from ec1841.
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 12/31/13 06:12 PM
Robotron A7150:

This is a weird-ass bugger, but essentially it's an East German IBM PC/XT clone that sucks ass when it comes to compatibility. It uses a uPD7220 combined with a UA880 CPU and a crapton of Z80 peripherals to emulate a CGA (it seems). Could be a good testcase for the 7220.

MESS status: completely skeletal in SVN, though I have been working on getting it to at least display something. Once the weird-ass Z80 stuff has been finished, I'll post a screenshot.
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/01/14 02:43 AM
Well, crap. Apparently, from the docs over here, http://www.tiffe.de/Robotron/MMS16/, I can't figure out how to send commands to the uPD7220 from the Z80. Oh well... I at least have a MUCH more fleshed out skeleton diff here based on latest SVN: http://pastebin.com/spvg4daq

EDIT: Oh yeah, it'll probably need a big clean-up before it goes in as I did everything in one source file.
Posted By: Lord Nightmare Re: ex- USSR and Soviet Bloc hardware - 01/05/14 02:29 AM
alegend45: how goes progress for this?
Remember, posting stuff here is not the best way to submit it: use the mamedev.org submission address (which can be found on the mamedev.org wiki) to submit stuff.

Edit: "(It's a uPD7220 controlled by a Z80, which from the main system, is controlled by an 8086. I don't even see the point of that.)" - this makes perfect sense: its a upd7220 controlled by a slave z80 cpu which babysits the 7220 and allows higher level command protocol between it and the 8086 (i.e. draw circles, arcs, lines etc from maybe even a display list)

LN
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/05/14 03:43 AM
Progress is rather sucky now. Oh yeah, and I did figure out why the uPD7220 was controlled by a Z80. Apparently, the clone they used was designed to interface with a Z80.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 01/05/14 03:53 AM
The real 7220 is almost always connected to a Z80 too.
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/05/14 04:05 AM
Oh. Odd, I thought there were computers where the 7220 was connected directly to an 8086.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 01/05/14 04:11 AM
Pretty much anything can be connected to anything if you spend the gates. There's a 68882 FPU card for the Apple II smile
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/05/14 04:35 AM
Eh, good point.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/25/14 05:41 PM
There's also a text-only video option (ABS card) -- Z80 + 8275. Firmware emulates a VT220 terminal or something close.

doc: http://www.tiffe.de/Robotron/MMS16/ABS-K7071/ABS-K7071.pdf
roms: http://www.tiffe.de/Robotron/MMS16/roms/ABS/

This machine is weird-ass indeed, hope Alegend45 doesn't give up on it smile
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/25/14 07:21 PM
Well, unfortunately, there's barely any docs on it whatsoever, and the existing ones are in German, making them hard as hell to read for a monolingual like me.

In other words, until I can get one off eBay or something and study it myself, I can't finish it. Oh well, off to getting other, hopefully less obscure things booting.
Posted By: judge Re: ex- USSR and Soviet Bloc hardware - 01/25/14 07:33 PM
Even if you cannot finish it, you can still submit the progress so far. Perhaps someone else can pick it up from there.
Posted By: Alegend45 Re: ex- USSR and Soviet Bloc hardware - 01/25/14 07:42 PM
http://pastebin.com/TsJnqFm9

That's all the work I've got. It'll probably require some cleanup, though.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/25/14 08:54 PM
Thanks for your effort anyway.

I've only seen this machine once and it was not starting up, but maybe I can track it down again...
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/28/14 04:57 PM
Sound card for poisk1 turned up (http://zx.pk.ru/showthread.php?t=22566) and its software's been dumped, but there's no useful info on the card itself (yet).

Apparently it has MIDI in/out (there's a 8251 for that), DAC/ADC and some kind of sound generator (most probably a 8253 again).
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 01/28/14 05:11 PM
Neat. Hopefully we can get some PCB pics and stuff smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/28/14 06:03 PM
Owner is AFK until Feb 15 so no pics for now frown
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/29/14 09:39 AM
A music disk for 'apogee', uses its 3-channel sound generator: http://yadi.sk/d/SSzTb555GtfJB (discussion: http://zx.pk.ru/showthread.php?t=22573)

Author warns that it was designed for another emulator (Emu80) and will not sound exactly the same in others.

To play it in MESS:

- attach cassette image (*.rka)
- at the '==>' prompt, enter 'I' <return> and start the tape
- run it: 'G0' <return>
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/21/14 07:53 PM
Firmware from ec1841's XT-HDC (i8089 version; there was also a Z80 one) -- http://www.emuverse.ru/downloads/computers/ES-184x/firmware/ES-1841-KZHD.zip

There's no tech manual or schematics but here's a photo -- http://fotki.yandex.ru/users/shattered/view/642515?page=0

Disassembly looks sane but I never saw i8089 assembly before smile
Quote:

00000000: 31 30 00 80 movi gb, 8000
00000004: D1 30 08 84 movi cc, 8408
00000008: 0A 4D 18 40 movbi [gb].18, 40
0000000C: 28 20 30 addbi gb, 30
0000000F: 08 30 3E movbi ga, 3e
00000012: A0 00 wid 8, 16
00000014: 60 00 xfer
00000016: 68 30 06 movbi bc, 06
00000019: 28 20 D0 addbi gb, d0
0000001C: 48 30 00 movbi gc, 00
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 02/21/14 08:51 PM
Yeah, that looks like valid 8089 asm. gb is the source pointer, ga the destination and bc the counter. bc is loaded after the transfer because there is a one instruction delay after the xfer instruction before the dma begins.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/22/14 08:50 PM
mc1502's DOS-clone cannot format floppies and I suspect that it doesn't like when wd_fdc_t::status_r() sets S_IP bit in IDLE state even when previous command was not type 1.

Commenting out "main_state == IDLE" makes formatting work, but I'm unsure how this affects other drivers.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/27/14 07:26 PM
fun fact: MDA-clone for ec1840/ec1841 runs in 'low-resolution' mode (8x8 chargen) [1]. Plus, its chargen is in RAM, just like in CGA-clone for that series.

[1] http://www.seasip.info/VintagePC/mda.html
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/03/14 10:16 PM
... its character cell is 8x14 but I'm unsure how it's padded vertically, anyway, WIP:

Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/03/14 11:56 PM
Nice work, shattered smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/04/14 05:48 PM
There's still mouse adapter to be emulated and the driver could be marked WORKING smile
Posted By: smf Re: ex- USSR and Soviet Bloc hardware - 03/06/14 07:59 AM
Originally Posted By shattered
Author warns that it was designed for another emulator (Emu80) and will not sound exactly the same in others.


Doesn't matter what it sounds like on another emulator. It's what it sounds like on real hardware that is interesting to us.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/07/14 05:51 PM
Apparently on the real hw the pitch is different too smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/07/14 06:10 PM
http://www.ucis.pitt.edu/nceeer/1989-801-5-2-Judy.pdf -- "SOVIET COMPUTER SOFTWARE AND APPLICATIONS IN THE 1980S"

Could be interesting, haven't read it yet.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/07/14 07:11 PM
Having skimmed over it, the history part is definitely interesting and will merit going back and reading properly, but they concentrate mostly on minicomputer and mainframe class stuff. Microcomputers are represented only by the CP/M and MS-DOS clones; the unique Apple II and Spectrum clones we know existed aren't mentioned that I could see.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/07/14 08:34 PM
David A. Wellman - "A Chip in the Curtain: Computer Technology in the Soviet Union", National Defense University Press, 1989

http://www.dtic.mil/dtic/tr/fulltext/u2/a259360.pdf

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/08/14 09:12 AM
Originally Posted By shattered
... its character cell is 8x14 but I'm unsure how it's padded vertically, anyway, WIP:

Turns out that OS for the ec1840 ships a driver, es1840.sys, which loads a much nicer font:

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/16/14 08:41 PM
Originally Posted By shattered
There's still mouse adapter to be emulated and the driver could be marked WORKING smile


Apparently that adapter is a clone of InPort (bus mouse) interface -- both have a 8255, default port is 23Ch, etc.

Now to find a decent description of the protocol...
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 03/17/14 12:05 AM
Looks pretty simple.

http://www.cs.fsu.edu/~baker/devices/lxr/http/source/linux/drivers/input/mouse/inport.c
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/19/14 07:26 PM
mk88's BIOS assumes that floppy drive is QD and silently multiplies track number by 2 before passing it to FDC

What is the clean way to handle this? For now I'm patching the BIOS.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/23/14 08:13 AM
4 more BIOS dumps for mc1502, one of them includes hard disk support -- http://zx.pk.ru/showpost.php?p=582719&postcount=81

Schematic for that hard disk controller (uses i82064) and the machine itself (not sure which hw revision), in OrCAD format -- http://zx.pk.ru/showpost.php?p=583031&postcount=87

I will add the dumps to MESS; not sure how to convert OrCAD files to svg or something though.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/25/14 08:14 PM
ec1842 (not in MESS -- not sure if there are any dumps) is another interesting (aka horrible) beast -- it was apparently designed to run protected-mode OS for i286 (not sure if it was an original design or not).

But instead of i286 or its clone it uses a modified i8086 + external MMU + software emulator for opcodes that aren't implemented in the silicon.

The emulator -- http://zx.pk.ru/attachment.php?attachmentid=46992&d=1395679442

Ongoing discussion -- http://www.phantom.sannata.ru/forum/index.php?t=15452
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 04/01/14 01:08 AM
Originally Posted By shattered
mk88's BIOS assumes that floppy drive is QD and silently multiplies track number by 2 before passing it to FDC

What is the clean way to handle this? For now I'm patching the BIOS.


Spent a few minutes looking and don't think there's a simple way with normal PC raw floppy images. You'd probably have to make an imagedisk file with bin2imd with the correct layout options.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 04/01/14 05:46 AM
Will try that, thanks.

poisk1 and mc1502 also have a QD drive but can handle both QD and DD floppies (the former checks media descriptor, the latter just creates two more logical drive letters).
Posted By: b90u Re: ex- USSR and Soviet Bloc hardware - 07/12/14 06:50 AM
I want to use 720k floppies in ec1841 emulator.

When "dip switches -> floppy type" configuration switch is in "40 tracks" position, then only 360k disks work. After loading pu_1700 I'm able to format empty 720k image to 80 tracks/ 9 sectors/ 2 heads, but then I have sector error on any access above 360k.

When "dip switches -> floppy type" option is "80 tracks", then I'm not able to make bootable DOS image at all. I've tried to make 360k, 720k, 1.2m images in different ways, in "80 tracks" mode DOS doesn't boot, sometimes prints "Disk Boot failure", which means that 1st sector is read, but not more.

What should be the value of that "floppy type" configuration switch?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/12/14 06:42 PM
I don't think it is actually used by the BIOS. I implemented it only because the available tech manual documents it.

BTW, the poisk1 BIOS wants media descriptor byte to be F9 on 720k floppies or they won't boot.
Posted By: b90u Re: ex- USSR and Soviet Bloc hardware - 07/13/14 02:51 PM
shattered, than you for reply, though it's confusing, because there is a difference in behaviour depending on this switch position.

I have a bunch of plain floppy images:

copies of real floppies,
or downloaded from internet,
or prepared by dd count=$((9*2*$ntracks)) and then formatted from within emulator or mapped and formatted as loop device in linux etc etc.

All these images work fine when they are 360 KB _and_ mentioned switch is set to "40 tracks".

None of these images (of any size) are recognized when your switch is set to "80 tracks".
I've tried to set media descriptor byte (at 0x15 offset) to F9 (most 720k images already has it), without success.


All I want is to emulate authentic DS/DD floppies, which were most commonly used on 1841 and usually formatted to 80/2/9 CHS (720 KB).
Is this possible, did you try this?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/13/14 04:12 PM
ec1841 driver is configured with DSDD drives, not DSQD so even with DIP set to 80, there's no way for this to work. And I'm not sure MESS can autodetect 40/80 tracks (see earlier messages in this thread) even if you change it to DSQD.
Posted By: b90u Re: ex- USSR and Soviet Bloc hardware - 07/13/14 04:29 PM
So no simple way to have 720 disks?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/13/14 05:01 PM
Afraid so. Maybe attaching a secondary FDC could work.

Hard disk support is more useful, and I should clean up and submit patches to isa_hdc that make it compatible with ec1841. XT-IDE should also work but for some reason doesn't.
Posted By: b90u Re: ex- USSR and Soviet Bloc hardware - 07/13/14 05:09 PM
Ok, thank you for explanation.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/14/14 08:30 PM
np. Are you interested in hacking any of xSU drivers?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/30/14 05:19 PM
Yet another obscure 32-bit workstation from 1980s, custom CPU, custom OS, the works...

http://www.excelsior-usa.com/krg/krg.html
https://code.google.com/p/kronos/
http://www.kronos.ru/
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 09/30/14 05:57 PM
Originally Posted By shattered


Wonder if Leo knows all the code is gone.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/30/14 06:05 PM
Errr... actually it's there, I've just checked a copy out.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/30/14 06:08 PM
In the Browse view a lot of the folders are empty, and some aren't.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/01/14 06:21 PM
And it's unclear how to bootstrap a working system. OS seems to be written in Modula-2.

Perhaps authors of this code still remember that...
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/20/14 05:54 PM
A kind soul scanned the technical manual for iskr1030 keyboard, this should make it work in MESS (given time) -- https://www.sendspace.com/file/9hoy55

Al K -- perhaps you can publish it (and other docs) on bitsavers?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/02/14 10:37 PM
First step towards emulation of DVK desktop series (uses PDP-11 instruction set architecture) -- its text-only video board. It's designed to be used with a clone of LK201 keyboard so I've tried to plug in an emulated one, but it doesn't seem to send anything to host?

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/09/14 01:07 PM
Next step -- the color graphics board, KCGD. Text-only was easy since it uses 8080 and the ususal support chips, but KCGD (and its host system as well) uses an unique microprocessor implementation of pdp-11 ISA. Here's the skeleton displaying fake input from the host:

Posted By: Bavarese Re: ex- USSR and Soviet Bloc hardware - 11/10/14 05:50 PM
(Reply to #96768): DVK hardware

As far as i know, there is no working LK-201 implementation in MESS (both 'rainbow.c' and the similar VT-100 driver abort with keyboard related errors during ROM intialization).

Perhaps R.Belmont or Mister Burke (who provided details about the original DEC LK-201) could give some hints?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/10/14 06:45 PM
I should have crossposted this (http://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=46766#Post46766) -- I've emulated the clone keyboard, and the video board driver is mostly usable (as long as you don't press Caps Lock smile. It's essentially an embedded terminal -- takes power from Q-bus, keyboard input, talks to host over serial port, and outputs composite video.

The keyboard uses nearly identical protocol and scancode set as LK201 -- f.e. it ignores the keyboard mode commands (LK_CMD_MODE in http://www.netbsd.org/docs/Hardware/Machines/DEC/lk201.html) and there is an extra key to switch layout (Latin/Cyrillic).

Keyboard driver needs more work though -- bidirectional mode is missing at the moment since video board does not use it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/06/16 05:36 PM
Originally Posted By shattered
Next step -- the color graphics board, KCGD. Text-only was easy since it uses 8080 and the ususal support chips, but KCGD (and its host system as well) uses an unique microprocessor implementation of pdp-11 ISA.


Some progress -- the board is talking to SIMH running Ultrix, and the shifted lines at the bottom are likely because of core bugs.



... and to find them I need to boot RT-11 and run tests from FTMON (XXDP workalike), but that is not easy -- in this screenshot RT-11 is running off virtual disk but not talking to the console for some reason:

Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/06/16 06:19 PM
Nice. BTW, emulated LK-201 should send fine now.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/06/16 11:39 PM
What is the good way to cause a bus error on access to unmapped memory? I have added a fake input line to T11 core and assert it from AM_READWRITE handlers, but this does not seem the right way.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/07/16 12:45 AM
That's exactly how a bunch of 680x0-based drivers do it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/07/16 05:59 AM
Yeah, I stole idea from those smile

But it's rather clunky -- have to recalc am_readwrite windows manually, every time I add a new device + dunno how to convert 'offset' passed to handlers to offset from start of RAM.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/07/16 12:10 PM
Bus error usually *is* an input pin on the processor, so that's correct how to do it.

offset is simply the number of data bus units. For 8-bit data buses, offset = byte address, minus the start of the handler. For 16-bit, offset is the number of 16 bit words, and for a 32-bit data bus it's the number of 32-bit words.

So for this memory range on a CPU with a 32-bit data bus:
Code:
AM_RANGE(0x3000, 0x301f) AM_READWRITE(read32_r, read32_w)


...a CPU access to address 0x3010 would be an offset of 4 (0x3010 - the base 0x3000 = 0x10. Converted to 4-byte words = 4).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/08/16 10:32 PM
Elektronika MS1201.02 (a Q-bus board, basis of some desktops in DVK series) WIP -- showing ODT prompt smile The cpu on this board (K1801VM2) has ODT not in firmare but in 'shadow' ROM and has extra instructions to switch between 'user' and ODT ('halt') modes.


Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/09/16 07:15 PM
with bankdev plugged in, performance doesn't suck so much and now I see there actually is a core bug smile

Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 06/09/16 07:58 PM
Bankdev is definitely your friend smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/14/16 08:01 PM
More progress. Added a PC11-type paper tape reader, reused a bit of code from SIMH (console terminal stuff, EIS insns emulation etc.) and now I can run paper-tape software -- for now, it's mostly tests.

ROM CPU tests and 2 of LSI-11 CPU tests (VKAA -- basic instructions, VKAB -- EIS) are passing. FIS test is failing, but this CPU has no hardware FIS support and it's emulated in ROM; unsure if real CPU passes these or not.


MESS: МС1201.02 WIP - MAINDEC-11-DVKAA test passing


MESS: МС1201.02 WIP - MAINDEC-11-DVKAB test passing


MESS: МС1201.02 WIP - MAINDEC-11-DVKAC test failing
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/17/16 07:20 AM
With a bit of fakery (RESET insn does nothing in the current core), VKAH system exerciser is passing too:


MESS: МС1201.02 WIP - MAINDEC-11-DVKAH test passing

and RT-11 (FTMON is reworked XXDP that runs under it) is also booting (with a bit of debugger magic for now):


MESS: МС1201.02 WIP - FTMON running tests from virtual disk
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/18/16 12:24 PM
Two MESS instances talking to each other. This is actually how the real life setup was -- dvk_ksm is self-contained board with no data connection to the bus, so it has to be physically plugged in into host board via null-modem cable.


MESS: emulated dvk_ksm talking to МС1201.02 WIP - FTMON


MESS: emulated dvk_ksm talking to МС1201.02 WIP - FTMON running terminal test
Posted By: Micko Re: ex- USSR and Soviet Bloc hardware - 06/18/16 02:20 PM
nice work there. we should move into more work for pdp11 series.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/18/16 07:31 PM
pdp11 world is mostly octal, so it would be useful to switch various parts of the code into octal mode (disassembler, trace logs, debugger etc.).

Also, triggering a bus error from default unmapped memory handler would be useful too.

(I've worked around both of these but obviously those hacks can't go in as is)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/22/16 09:58 PM
Using set_input_line from unmapped memory handler to trigger a bus error in the CPU isn't good enough -- it's async and bus errors can happen at insn fetch time. Worked around this for now (moved bus error tracking to machine from cpu) and some more tests are passing.

Also, DIV emulation code from SIMH apparently isn't quite right (this is a test specifically written to exercise emulation of 1801VM2):

Posted By: judge Re: ex- USSR and Soviet Bloc hardware - 06/23/16 07:06 AM
Originally Posted By shattered
Using set_input_line from unmapped memory handler to trigger a bus error in the CPU isn't good enough -- it's async and bus errors can happen at insn fetch time. Worked around this for now (moved bus error tracking to machine from cpu) and some more tests are passing.


I ran into a similar problem while working on the gameboy driver. It should eventually be fixed once a cpu core becomes sub-cycle accurate. I worked around this by making the execute_set_input method public and calling that directly as well from the driver code.

It is still a hack but at least it prevents code duplication.
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 06/23/16 04:10 PM
Originally Posted By shattered
Using set_input_line from unmapped memory handler to trigger a bus error in the CPU isn't good enough -- it's async and bus errors can happen at insn fetch time. Worked around this for now (moved bus error tracking to machine from cpu) and some more tests are passing.

Also, DIV emulation code from SIMH apparently isn't quite right (this is a test specifically written to exercise emulation of 1801VM2):



if that is true, you should let bob supnik know (bob
at supnik.org)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/25/16 08:56 PM
That's unverified for now.

Source code for tests 791401 (equivalent of VKAA) and 791404 (VKAH ??) -- https://github.com/nzeemin/bkbtl-doc/tree/master/Tests

C implementation of 1801VM1 core (converted from reverse-engineered Verilog model) -- http://zx-pk.ru/attachment.php?attachmentid=53262&d=1440679095
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/01/16 07:15 PM
z80daisy.cpp is a nice approximation of Qbus interrupt chain, and so some more tests are passing (f.e. VKAH, it does RESET right at the start). It does not support slot devices, though.

Lots more work to do, but here's what genuine RT-11 5.3 thinks of this emulator atm:

Posted By: Edstrom Re: ex- USSR and Soviet Bloc hardware - 07/01/16 09:34 PM
Great work shattered!

The only thing that disturbs me a bit with the daisy thing is that it is called z80daisy, there should rather be a didaisy.cpp or something to derive variants from, there are daisy chain signals in the vme bus also but it feels wrong to use anything 8 bit or Zilog near anything Motorola 16-64bit like the VME bus. I might get there one day with a pull request, who knows :-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/01/16 10:27 PM
:-)

'if a shoe fits, wear it' -- well, it doesn't quite fit but was good enough to allow RESET insn to do something useful.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/03/16 06:41 PM
With a bit more work (had to add rtscts flow control to null_modem), the graphics terminal (dvk_kcgd) is running. This board emulates a vt52, vt100 or vt220, and can run uploaded software (which is how vt220 emulator is done). Naturally, some of that software is game software smile


proof of concept -- 132-column mode with light background.


Demos, a Unix port for the DVK. Demos itself runs under SIMH for now, console is in MESS.
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 07/03/16 07:43 PM
Originally Posted By shattered
With a bit more work (had to add rtscts flow control to null_modem), the graphics terminal (dvk_kcgd) is running. This board emulates a vt52, vt100 or vt220, and can run uploaded software (which is how vt220 emulator is done). Naturally, some of that software is game software smile




cool. is this the first time SIMH and MAME have been cooperatively running?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/03/16 07:53 PM
I've done this before, it's quite easy btw. SIMH has to be started first.

SIMH -- add 'set console telnet=12345' to config file
MAME -- mess $drivername -bitb socket.localhost:12345
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/03/16 09:46 PM
and this is why this terminal got emulated smile





Posted By: Haze Re: ex- USSR and Soviet Bloc hardware - 07/03/16 09:51 PM
is all this stuff making the software lists in some form?
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/03/16 09:52 PM
The software being shown is running in SIMH, MAME is just emulating a terminal connecting to it.
Posted By: Haze Re: ex- USSR and Soviet Bloc hardware - 07/03/16 10:05 PM
right, but is the software being documented? even if there's no driver to connect it to directly, it would be a shame if the software ends up being lost.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/03/16 10:15 PM
Yes, these will be documented. The game was loaded from rt-11 started in another instance of mame (the terminal uses same cpu and chipset as the host).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/04/16 09:52 PM
Originally Posted By judge

I ran into a similar problem while working on the gameboy driver. It should eventually be fixed once a cpu core becomes sub-cycle accurate. I worked around this by making the execute_set_input method public and calling that directly as well from the driver code.


I'm going to apply the same workaround -- have you committed yours?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/11/16 09:55 PM
SM 7238 aka T3300 -- yet another DECclone, likely not of a DEC original, but of something compatible -- this one is Intel MCS80-based, with no character generator chip. Technical manual is rather good, and mentions a graphics option with Tek 401x and ReGIS features.



Posted By: Micko Re: ex- USSR and Soviet Bloc hardware - 07/12/16 08:24 AM
Any ETA when your code will be ready to include in MAME.

Also it would be cool to give some tutorial od running simh and mame in parallel with examples
Posted By: Lord Nightmare Re: ex- USSR and Soviet Bloc hardware - 07/12/16 08:33 AM
I believe the added copyright notice on startup between vt240 v2.1 and v2.2 roms was added because of the cit220+ design patent lawsuit by DEC, they trademarked the layout of that setup screen (or tried to), which as can be seen above the same layout is also used on the SM 7238 aka T3300.

LN
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/13/16 07:32 AM
Micko: sm7238 is missing a few features and has video errors but otherwise ready to submit.

pdp11 stuff is harder; 1801VM2 core has to be cleanly split from T11 core, and needs a better way to handle bus errors than making execute_set_input public. I'll push my wip tree so you can see why smile

In my wip I've added basic flow control to null_modem and I think this exposed a bug in i8251 (writes at https://github.com/mamedev/mame/blob/master/src/devices/machine/i8251.cpp#L419 shouldn't be inverted), maybe others have it wrong too.
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/13/16 12:26 PM
I believe you're correct, at least from the comment there:

Code:
	    bit 5:
	        0 = /RTS set to 1
	        1 = /RTS set to 0


Which says that /RTS (inverted RTS by typographical convention) is 1 when the bit is 0, so plain RTS is 0 when the bit is 0.

But the code does:

Code:
m_rts_handler(!BIT(data, 5));


which is the opposite.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 07/13/16 10:23 PM
Here's some motivation to get the ms7004 keyboard working.

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/13/16 10:25 PM
It's working in dvk_ksm and dvk_kcgd -- it wants 4960 baud clock, not 4800. EDIT: Actually, 4960*64, not 4960*16 smile ...and it's working for me (this is lynx showing https://koi8.pp.ru):

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/23/16 09:50 PM
video of poisk1 with its sound card, running speech synth demo from softlist under "Sigma-Four" DOS clone:

https://youtu.be/y4OGNWjyqbI

(no subtitles yet)
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/24/16 01:18 AM
Nifty. But don't post any speech synthesizers where plgDavid can see them ;-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/24/16 08:40 AM
Then I won't post a video of ec1841's synth card because it's not emulated :-) There's a full tech manual, and maybe sometime it will get scanned (owner has severe case of Real Life syndrome).

Its software is dumped (and in softlist), this help text gives an idea how it works:




ec1841.0104 speech synthesis swre
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/29/16 09:56 PM
zx.pk.ru collective found interesting, previously unknown, software for the poisk1: http://www.deep-shadows.com/hax/wordpress/?page_id=301

Quote:

HyperBIOS -- makes screen output 2-3 times faster; – solves lot of compatibility issues; – remaps keyboard layout and makes it more comfortable; – supports low-cost joystick interface, developed by me. Many people said that this was the most usefull program for that PC smile

SlowPlay -- Highly optimized *.STM [Scream Tracker 2 modules] player. Can play STM files on VERY slow PCs like POISK-1.


Haven't tested them much yet (but found a bug in the driver)...
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/06/16 08:48 PM
Originally Posted By shattered
and this is why this terminal got emulated smile


now with video: https://youtu.be/mWFyffsBPgA
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/15/16 08:04 PM
same terminal, newer firmware "182" (+ extra ROM with menus, ReGIS-like features etc.)

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/19/16 08:25 AM
Hooked up mono graphics board (400x286 px) to the ms1201 driver. In real life, it overlays its video signal over that from ie15 or dvk_ksm (both text-only terminals), hence the graphics resolution.

checked a few games and they are playable:


"Invasion"


Choplifter workalike


"Kot-Rybolov"
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/20/16 08:42 PM
An interview with authors of these three (plus a few more) games -- http://pk-info.ru/infopk/dvk/aspcorp1.html
Posted By: Edstrom Re: ex- USSR and Soviet Bloc hardware - 08/20/16 10:07 PM
Interesting to read about software development in a time were the wall was up and the technical blockade was in effect, cloning instead of importing games must have have pretty much the only option.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/21/16 12:34 AM
Reverse engineering flourished, yeah. So much so, that DEC CVAX die apparently has a shout-out to the reverse engineers (http://micro.magnet.fsu.edu/creatures/pages/russians.html) smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/21/16 12:25 PM
'Snake' game for the ms1201, in attract mode: https://youtu.be/xqwaVrG07LU
Posted By: Edstrom Re: ex- USSR and Soviet Bloc hardware - 08/21/16 01:03 PM
My cousin worked as a sales guy for DEC back in 1990 and was responsible for Russia and other former Soviet states. He told me that they got good business from state and universities that wanted software support agreements for all the VAX and DEC clones. :-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/21/16 01:37 PM
Wonder if they ever got DEC to agree to support the clone hardware smile

I am (slowly) piecing together the 'cloning history' of pdp-11 and its software, looks like the first clone was made in 1973 (http://www.ineum.ru/m400) followed by several 'waves' of "SM" series machines ('small machines'); f.e. SM-3 (1978) is roughly equivalent to 11/20 and SM-4 (1979) -- to 11/40.

The ms1201 and its chipset, however, are wholly original implementations of pdp-11 ISA -- they are close enough to the originals that many of DEC hardware tests apply.
Posted By: Edstrom Re: ex- USSR and Soviet Bloc hardware - 08/21/16 02:06 PM
If I remember correctly DEC had a replace program where they offered to exchange the clones with second hand original hardware, at a good price level, that DEC had obtained when upgrading customers elsewhere. I don't know how successful this program was though.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/21/16 04:09 PM
Should have worked well enough, if the customer didn't have custom-designed boards...
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/23/16 11:30 PM
WIP: converted ie15 into a device and made two interfaces for it -- a rs232 slot device, and a standalone driver. Next step -- overlay video output from 'kgd' on top of 'ie15', just as in real life.

Code:
./mess ms1201 -rs232 ie15 -rs232:ie15:rs232 "" -ld

Driver ms1201 (MS 1201.02):
   <root>                         MS 1201.02
     bankdev0                     Address Map Bank
     dl11                         DL11 @ 4.60 MHz
     kgd                          DVK KGD
       gfxdecode                  gfxdecode
       palette                    palette
       scantimer                  Timer
       screen                     Video Screen @ 15.40 MHz
     maincpu                      K1801VM2 @ 4.00 MHz
     pc11                         PC11
     pclk                         Timer
     rs232                        RS232 Port
       ie15                       IE15 Terminal
         beeper                   Beep @ 2.40 kHz
         gfxdecode                gfxdecode
         keyboard                 15WWW-97-006 Keyboard
         maincpu                  ie15 CPU @ 3.08 MHz
         mono                     Speaker
         palette                  palette
         rs232                    RS232 Port
         scantimer                Timer
         screen                   Video Screen @ 15.40 MHz
     vhd                          Virtual Hard Disk
Posted By: MetalliC Re: ex- USSR and Soviet Bloc hardware - 08/26/16 05:33 PM
some Вектор 06Ц (Vector 06C) emulated screens






Posted By: MetalliC Re: ex- USSR and Soviet Bloc hardware - 08/26/16 05:41 PM

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/27/16 06:13 PM
Chess program (variant of http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rt/games/chess.sav) checkmates itself in 5 minutes smile

https://youtu.be/OHoAyWleFyo
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/01/16 10:20 PM
De-skeletonized uknc.cpp shows signs of life:



This machine was standard equipment in many computer classes in high schools, so there's plenty of educational software and games. There are two existing emulators, one of those is open-source (https://github.com/nzeemin/ukncbtl).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/03/16 11:01 PM
a bit more life -- self-test is passing

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/04/16 09:55 PM
3rd party IDE interface card currently fails to boot because its ROM tries to set parameters while READ MULTIPLE command is still running:

Code:
[:ide:ide:0:hdd] IDE Read multiple: C=0 H=0 S=1 LBA=0 count=1
[:ide]    2.486286 at ':subcpu' (25444): IDE R                   [:ide] 1f7 == 00d0 (ff2f)
[:ide]    2.486291 at ':subcpu' (25444): IDE R                   [:ide] 1f7 == 0058 (ffa7)
[:ide]    2.486296 at ':subcpu' (25452): IDE R                   [:ide] 1f7 == 0058 (ffa7)
[:ide]    2.486310 at ':subcpu' (25534): IDE R                   [:ide] 1f0 == 0a22 (f5dd)
[:ide]    2.486326 at ':subcpu' (25552): IDE W                   [:ide] 1f2 <- 0add (f522) & 177777
[:ide:ide:0:hdd] ':subcpu' (25552): :ide:ide:0:hdd dev 0 write_cs0 0002 0022 00ff ignored (DRQ) command 20
[:ide]    2.486338 at ':subcpu' (25566): IDE W                   [:ide] 1f6 <- fff6 (0009) & 177777
[:ide:ide:0:hdd] ':subcpu' (25566): :ide:ide:0:hdd dev 0 write_cs0 0006 0009 00ff ignored (DRQ) command 20
<...>
[:ide]    2.490648 at ':subcpu' (25736): IDE W                   [:ide] 1f7 <- ff6e (0091) & 177777
[:ide:ide:0:hdd] IDE Set configuration (1 heads, 0 sectors)


is that supposed to be a valid usage ?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/10/16 11:38 AM
... apparently it is (ATAPI-1 standard allows "Initialize drive parameters" (aka Set Configuration) and "Execute drive diagnostic" while DRDY=0). Using a virtual disk for now, real hardware emulation is hard smile

Some games are now playable, f.e. a RiseOut clone:
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/10/16 01:42 PM
Love this stuff. Back in the 80s US magazines were all about what we were missing from Japan (at least until the Amiga/ST/IIgs pretty much outclassed the PC88) but there was never any visibility into what was going on in the USSR and Eastern Europe, so it's great to finally see some of it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/10/16 02:20 PM
I'd say that two major home platforms were Spectrum (rather, its many clones like the Pentagon) and BK series (BK-0010, BK-0011) -- market was flooded with former and the latter was mass-produced and could be actually bought in a shop. There's demoscene for both of these, see f.e. https://www.youtube.com/watch?v=BLCjzHAy9Ec (Insult gigademo for the BK) and https://www.youtube.com/watch?v=oUipQfxURwk (showcase of several Spectrum demos from Assembly'2011).

The UKNC (on the screenshot) was an educational machine and I'm not sure how many were sold to general public; the DVK series (screenshots earlier in this thread) was a professional machine and generally wasn't available to the public at all. Of course, either could be 'obtained' if you really wanted it...
Posted By: MetalliC Re: ex- USSR and Soviet Bloc hardware - 09/10/16 03:21 PM
it was probably region-specific, haven't seen BKs here at home use.
people mostly had ZX clones, some Vector 06C (btw, ~1/3 of it's current MAME softlist made by my old RL friends), a bit of Lviv PK-01, and very few MSX clones.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/21/16 10:24 PM
Workin on Q-bus and slot devices for it. This is uknc booted from add-on IDE controller:



and yet another Tetris game (one of several for this machine, this one just looks nice smile )

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/27/16 09:30 PM
Another Qbus hard disk controller -- very similar to MFM controller from DEC Pro; in fact, it is based on a clone of it, and has very similar API (CSR at 174000, vector 300, device name DW). HLE for now, if (when) its full dump surfaces, I may attempt to plug into 8x300 cpu core and mfmhd.cpp.

Second screenshot is of swiss-army knife tool, DESS.SAV (hex editor/assembler/disassembler -- edits memory, files and devices too).



Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 09/28/16 12:51 AM
Originally Posted By shattered
Another Qbus hard disk controller -- very similar to MFM controller from DEC Pro; in fact, it is based on a clone of it, and has very similar API (CSR at 174000, vector 300, device name DW). HLE for now



good job!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/28/16 10:50 PM
Working on HLE of RX11 controller and RX01 device (to boot XXDP and run more diags, with more comfort):

Code:
telnet> mode character
 140300
@B
$LA
 157500
@P 157712
@200
MAINDEC-11-DZRXA-E

SWR = 000000  NEW =
RXCS = 177170 RXDB = 177172 INT VECTOR = 264
DRIVE(S)  UNIT 0 UNIT 1       P= 0  T= 0  S= 0

RX11 / RXV11
POWER
<...loops here...>


Going to compare notes with Don North's emulator (http://www.vcfed.org/forum/showthread.php?51918-Is-there-an-RX01-Emulator/page5).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/02/16 03:44 PM
HLE is passing both of DEC tests (ZRXA and ZRXB), but I had to hack basicdsk.cpp to work around option_resolution::get_default() -- it is not yet reimplemented in c++:

Code:
Connected to localhost.
Escape character is '^]'.


CHMDXC0 XXDP+ DX MONITOR
BOOTED VIA UNIT 0
28K NON-UNIBUS SYSTEM

ENTER DATE (DD-MMM-YY): 

RESTART ADDR: 152010
THIS IS XXDP+.  TYPE "H" OR "H/L" FOR HELP.

.R ZRXA??
ZRXAF0.BIC

MAINDEC-11-CZRXA-F

SWR = 000000  NEW = 
RXCS = 177170 RXDB = 177172 INT VECTOR = 264
CAUTION - IF YOU DESIRE TO TEST UNIT 0
REPLACE LOAD MEDIUM WITH A SCRATCH DISKETTE
THEN PRESS CONTINUE 001744
@P
DRIVE(S)  UNIT 0 UNIT 1       P= 0  T= 0  S= 0

DDDDD


Code:
Connected to localhost.
Escape character is '^]'.


CHMDXC0 XXDP+ DX MONITOR
BOOTED VIA UNIT 0
28K NON-UNIBUS SYSTEM

ENTER DATE (DD-MMM-YY): 

RESTART ADDR: 152010
THIS IS XXDP+.  TYPE "H" OR "H/L" FOR HELP.

.R ZRXB??
ZRXBF0.BIC


CZRXBF0 RX11 INTERFACE TEST

SWR = 000000  NEW = 
G╫ТЙT PARAMETERS:      0
 TRACKS 52,53,114,0    FIRST=  1  LAST= 32

DDDDD
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/03/16 07:32 PM
Well, real life came calling and I have to put MAME on hold for a while. Pushed most of my WIP tree to github (https://github.com/shattered/mame/commits/gitwip), key parts are not committable unfortunately.

What's in there:

- K1801VM2 core (= severely hacked T11 core). This chip has no MMU.
- parts of chipset for this cpu (DEC DL11-compatible serial line unit, etc.)
- new bus (DEC Q-bus with add-ons to support uknc.cpp)
- new driver, ms1201.cpp (Electronika MS1201.02 single-board computer)
- de-skeletonized uknc.cpp, sans sound and floppy
- much improved DVK KCGD -- intelligent color graphics card, 800x480 px
- qbus devices:
-- DEC PC11 paper tape reader (no punch)
-- DEC RX11 floppy controller with RX01 drive (HLE)
-- virtual hard disk driver (not a real hardware device)
-- DVK KGD -- dumb monochrome framebuffer, 400x286 px
-- DVK KZD -- MFM harddisk controller (HLE, read-only)
-- UKNC ROM carts
-- UKNC IDE harddisk controller
-- skeletons of MX: and MZ: floppy controllers

What works and what doesn't:

- ms1201: 5 of 6 tests in ROM pass (remaining test is for unimplemented printer port)
- ms1201: boots and runs RT-11 SJ/FB monitors, XXDP+ small monitor
- ms1201: passes DEC VKAA, VKAB tests but fails VKAH (VKAC is supposed to fail). Passes equivalent tests 791401, 791402 but fails 791403, 791404
- uknc: passes ROM tests but fails many standalone tests
- both drivers run many games (text-only and graphical), see screeshots and videos earlier in the thread
- there's no softlist but a long TODO list for all of the above smile

There's also SIMH WIP tree at https://github.com/shattered/simh/tree/newwip -- based on Seth Morabito's 3B2 WIP, it adds simulation of AT&T DMD 5620 terminal, good enough to run GEBACA (screenshot).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/22/16 12:33 PM
8x300 firmware for the aforementioned harddisk controller got dumped. Looks sane, too:
Code:
00000000: E036            jmp  0036h
00000002: E029            jmp  0029h
00000004: B021            nzt  liv0,1,01h
00000006: B704            nzt  liv7,0,04h
00000008: B324            nzt  liv3,1,04h
0000000A: 1781            move liv7,4,r1
0000000C: 8109            xec  r1,09h
0000000E: 8119            xec  r1,19h
00000010: E004            jmp  0004h
00000012: C700            xmit 00h,ivl
<...>


There's another 8x300 disassembler out there -- http://amigan.1emu.net/releases/Dis8X305.readme -- could be useful.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/24/16 04:07 PM
Apparently, these are bitwise identical to firmware of DEC Pro controller Rev.1 (P/N 54-15134-01) -- ROMs 071B2, 072B2, 073B2... wonder if DEC published firmware source for it?
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 10/24/16 05:48 PM
Originally Posted By shattered
Apparently, these are bitwise identical to firmware of DEC Pro controller Rev.1 (P/N 54-15134-01) -- ROMs 071B2, 072B2, 073B2... wonder if DEC published firmware source for it?


that's a useful data point. is the pro hard disk controller schematic somewhere? I think I looked for it when this came up and I don't think I found it
Posted By: brouhaha Re: ex- USSR and Soviet Bloc hardware - 11/20/16 12:00 AM
I've been working a little bit off-and-on for years on reverse-engineering the WD1000 and WD1001 disk controllers (8X300/8X305-based), and their clones. I've only made any significant progress within the last few days, after hacking together my own disassesmbler which deals with the Fast I/O Select PROM. I do NOT recommend using this disassembler yet, for reasons that are explained in the README, but I've put it on github:

https://github.com/brouhaha/s8x30x

I've made some progress interpreting the firmware of an early WD1000, which only had 512 words of firmware, and didn't support run-time configurable sector size selection. So far I've figured out how they handle the host reading and writing the task file, dispatching the commands, and much of the sector ID search.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/20/16 12:04 PM
Originally Posted By Al Kossow
is the pro hard disk controller schematic somewhere?


Apparently not. There's schematic of second clone, though: http://www.emuverse.ru/downloads/computers/DVK/docs/kzhd.djvu

The story, apparently, is that once Pro got cloned (with its disk controller), the design was reused in the DVK series, as a Q-bus controller. That document is for the DVK one.
Posted By: brouhaha Re: ex- USSR and Soviet Bloc hardware - 11/21/16 11:36 PM
I've put my work in progress on reverse-engineering the original WD1000 firmware on github:

https://github.com/brouhaha/wd100x

I use my own assembler syntax output by my previously mentioned s8x30x disassembler, so at the present there is no assembler for it. I expect to have an assembler in the not-too-distant future.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/22/16 08:20 PM
I think (after quick look at kzhd.djvu) that dec's controller was derived from wd1000 (at least the fast select layout looks similar) and I've tried disassembling its firmware, but something is wrong (python 3.4.3):

Code:
% /tmp/s8x30x/dis8x30x /tmp/kr1656re3-4.bin /tmp/kr1656re3-5.bin 
Traceback (most recent call last):
  File "/tmp/s8x30x/dis8x30x", line 116, in <module>
    disassemble(s8x30x, memory, show_obj = args.listing, output_file = args.output)
  File "/tmp/s8x30x/dis8x30x", line 59, in disassemble
    symtab_by_value = pass1(s8x30x, fw, base)
  File "/tmp/s8x30x/dis8x30x", line 30, in pass1
    (dis, operands, fields) = s8x30x.disassemble_inst(fw, pc, disassemble_operands = False)
  File "/tmp/s8x30x/s8x30x.py", line 354, in disassemble_inst
    inst, form, fields = self.inst_search(fw, pc)
  File "/tmp/s8x30x/s8x30x.py", line 339, in inst_search
    form, fields = self.form_search(fw, pc, inst)
  File "/tmp/s8x30x/s8x30x.py", line 315, in form_search
    if OT.sr in form.operands and not sr.is_src_reg():
  File "/tmp/s8x30x/s8x30x.py", line 84, in is_src_reg
    if self >= self.liv0:
AttributeError: 'Reg' object has no attribute 'liv0'
Posted By: brouhaha Re: ex- USSR and Soviet Bloc hardware - 11/23/16 09:45 PM
The WD1000 and WD1001 have very similar fast select, so it's not easy to distinguish them based on that. The surest way I know to distinguish them is that the WD1000 has a WD1100-04 CRC chip, while the WD1001 has a WD1100-06 ECC/CRC chip.

The WD1001 also has a WD1100-07 and WD1100-09, but it's possible that those could be used on late revisions of the WD1000, so I wouldn't assume that the presence of those is definitive.

The problem you found is due to an improvement in how enumerations work in Python 3.5. I've just pushed an update which I've tested with Python 3.4.5, so with a bit of luck it should work with Python 3.4.3.

I do all my normal development with Python 3.5.1 or newer, so please let me know if you run into any other Python 3.4 incompatibilities in future versions.

If a copy of the DEC PROMs can be made available, I'd appreciate it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/25/16 08:39 PM
Apparently, Pro350 controller uses WD1100-01, -04, -05 and -12 (looking at the schematics of the clone.)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/18/17 09:53 PM
Help, my floppy disk is rusting smile



This particular floppy is not interesting, but a few others in the same pile are -- but they use an unique format that has to be emulated first (http://torlus.com/floppy/forum/viewtopic.php?f=19&t=1384)
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 01/18/17 11:14 PM
Originally Posted By shattered
Help, my floppy disk is rusting smile


Looks like someone carved up the top surface of the disk with their floppy head before you got it?

This is a REALLY common problem with crap (ie. soft) oxide/binder. Top heads like to dig into the top surface.
Posted By: Lord Nightmare Re: ex- USSR and Soviet Bloc hardware - 01/19/17 05:55 AM
What program makes those awesome floppy graphics?

LN
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/19/17 07:22 AM
Aufit -- http://info-coach.fr/atari/software/pc-projects/Aufit.php

HxC can also produce similar graphics but they are less awesome smile
Posted By: Al Kossow Re: ex- USSR and Soviet Bloc hardware - 01/19/17 04:17 PM
Originally Posted By shattered


"Aufit is not yet an open source project"

great...
Posted By: Haze Re: ex- USSR and Soviet Bloc hardware - 01/19/17 04:41 PM
Originally Posted By Al Kossow
Originally Posted By shattered


"Aufit is not yet an open source project"

great...


yeah.. it's a shame when tools like this aren't open source

HxC being open source was VERY useful as I was able to hack the code in order to extract working images (ignoring sector sizes) from the .raw dumps of the Magnet System games for example.

(I couldn't see a way to force such behaviour from the command-line or GUI at least)

definitely limits how useful the tools are if you don't have the code to play with.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/19/17 06:23 PM
Originally Posted By Al Kossow
Originally Posted By shattered
Help, my floppy disk is rusting smile


Looks like someone carved up the top surface of the disk with their floppy head before you got it?

This is a REALLY common problem with crap (ie. soft) oxide/binder. Top heads like to dig into the top surface.


Yes, there are some marks on the surface. There are disks in much worse condition, don't know yet if they are interesting or not.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/22/17 05:31 PM
Originally Posted By shattered

This particular floppy is not interesting, but a few others in the same pile are -- but they use an unique format that has to be emulated first (http://torlus.com/floppy/forum/viewtopic.php?f=19&t=1384)


I'm trying to make SAMdisk accept those flux images and dump track data for MAME (and other emulators) to read. Controller simulation is WIP too:

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/22/17 11:40 PM
OK, that's now working. Getting MAME to read them natively may be harder.
Code:
% samdisk --mx --scale=115 scan work/floppies/A3-05.scp
[work/floppies/A3-05.scp]
80 Cyls 2 Heads:
250Kbps mx, 11 sectors,  256 bytes/sector:
  0.0  0 1 2 3 4 5 6 7 8 9 10
  1.0  0 1 2 3 4 5 6 7 8 9 10
  2.0  0 1 2 3 4 5 6 7 8 9 10
  3.0  0 1 2 3 4 5 6 7 8 9 10
  4.0  0 1 2 3 4 5 6 7 8 9 10
<...>


Will clean up and submit to its github repo soon.
Posted By: Edstrom Re: ex- USSR and Soviet Bloc hardware - 01/23/17 09:22 PM
Shattered, did you checkout the "Palestra", apparently a Russian discrete ball & paddles game, full schematics in this blog entry:
Emulation of AY-3-8500-1 (and clones) soon ?? which also indicates that we had/have a decap going for the AY-3-8500-1,
which is the chip I was looking for. Anyway the Palestra could be a perfect candidate for you to try out Netlists as it is all in Russian I thought :-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/24/17 06:30 PM
I heard of that console; never played it, though.

I'll put that on my backlog of cool hardware to emulate someday smile

Here's another cool hardware -- a sound card for Agat-9 (apple II clone/derivative):

https://www.youtube.com/watch?v=Pyzk-iZwCPE

Track listing:

(unknown)
Ottawan -- Hands Up
Alan Parsons Project -- Sirius
Shostakovich -- Dolls' Dance
(unknown)

Forum discussion: http://zx-pk.ru/threads/26882-muzykalnyj-kompleks-na-baze-agata.html
Hardware info: http://agatcomp.ru/Reading/jzs52.shtml
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 01/24/17 06:42 PM
The Agat-9 is one of my white whales - it's not particularly Apple II compatible (the graphics are quite different, actually) but the documentation is entirely in Russian and Google Translate can be weird about it. (Example: this page http://agatcomp.ru/Reading/ebooks-cik7/1.0.OBSHIE_CBEDEHIJA.shtml when translated in Chrome it changes the Cyrillic characters to their Latin equivalents but doesn't actually translate).

The page for the card itself translated OK and it's a fairly standard design except for the noise channels. 2 8253 PIT clones driving DACs for the tone channels is the sort of thing we've definitely seen before.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/24/17 07:12 PM
Google breaks because some chars are actually Latin ones (a, c, o, e, p, x...) :-)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/25/17 08:53 PM
Agat floppies are either 140K GCR (format is identical to Apple's) and 840K MFM (80 tracks, 2 heads, 21 sectors, 256 bytes per sector), but the address marks etc. aren't standard: https://raw.githubusercontent.com/sintech/AGAT/master/docs/agat-840k-format.txt

Hooked this up to SAMdisk via quick copy/paste and it does seem to work smile

Code:
80 Cyls 2 Heads:
250Kbps MFM, 21 sectors,  256 bytes/sector:
  0.0  14 15 16 17 18 19 20 0 1 2 3 4 5 6 7 8 9 10 11 12 13 
  1.0  11 12 13 14 15 16 17 18 19 20 0 1 2 3 4 5 6 7 8 9 10 
  2.0  7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 1 2 3 4 5 6 
  3.0  19 20 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 
Warning: unknown MFM address mark (6B90) at offset 2 on cyl 4 head 0
  4.0  11 12 13 14 15 16 17 18 19 20 0 1 2 3 4 5 6 7 8 9 10 
<...>
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/06/17 10:03 PM
SAMdisk now support MX format (at least its HEAD version does).

de-skeletonized ms0515.cpp -- CPU is a clone of T11, video controller is Spectrum-like and there's a few ported (or maybe recompiled) games, f.e.



Pull request soon. Shout out to Dr. Titus for being the first to emulate this machine in EmuStudio.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/15/17 10:31 PM
Originally Posted By Alegend45
Robotron A7150:

This is a weird-ass bugger, but essentially it's an East German IBM PC/XT clone that sucks ass when it comes to compatibility. It uses a uPD7220 combined with a UA880 CPU and a crapton of Z80 peripherals to emulate a CGA (it seems). Could be a good testcase for the 7220.

MESS status: completely skeletal in SVN, though I have been working on getting it to at least display something. Once the weird-ass Z80 stuff has been finished, I'll post a screenshot.


Ignoring the 7220 for now, just a generic_terminal:



Looks like they've cloned iSBC firmware for this. Not sure if video boards are clones or reimplementations -- f.e. disk controller (KES) is described (http://www.tiffe.de/Robotron/MMS16/Doku/A7150/KES-K5170.pdf) as iSBC 215A/iSBX 218 compatible but uses a U880 (Z80), not a 8089.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/16/17 10:03 PM
Now with a bit more spectacular fail screen:

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/19/17 11:55 AM
Turns out there were 3 variants of video boards -- ABS K7071 (text only), ABG K7072 (dumb framebuffer) and ABG K7075 (7220-based). The latter two are driven by KGS K7070 (terminal emulator with downloadable software).

K7072 wip:

Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/05/17 02:29 PM
Originally Posted by shattered
It's working in dvk_ksm and dvk_kcgd -- it wants 4960 baud clock, not 4800. EDIT: Actually, 4960*64, not 4960*16 smile ...and it's working for me (this is lynx showing https://koi8.pp.ru):


The "keyboard port error 7" goes away if I replace ms7004 with lk201, and then this logo shows up:

[Linked Image]

It's supposed to look like this:

[Linked Image]

Not sure yet if emulation of ms7004 is inaccurate, or there was a different firmware for it.
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 03/05/17 03:01 PM
That's the vt240 clone, right? Ugh, I hope there's some video hardware differences because I have no idea what could be wrong to cause that.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/05/17 03:40 PM
Yes, it is the clone. Keyboard firmware could be different too -- the one we have is good enough to work with drivers that don't send anything to keyboard, or run simple tests (f.e. ms0515 sends LK_CMD_REQ_ID and receives expected response), but vt240 does much more (programs modes for various keyboard divisions etc. -- https://www.netbsd.org/docs/Hardware/Machines/DEC/lk201.html)...

Agat-7 (the Apple II non-clone) can use a variant of this keyboard with very different firmware and simpler hardware.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/12/17 02:15 PM
Originally Posted by shattered
SM 7238 aka T3300 -- yet another DECclone, likely not of a DEC original, but of something compatible -- this one is Intel MCS80-based, with no character generator chip. Technical manual is rather good, and mentions a graphics option with Tek 401x and ReGIS features.


Manual + schematics = working double-size chars and smooth scroll:

[Linked Image]

Cyrillic glyphs aren't very polished, though, compared with vt240-clone (mc7105).



Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/14/17 03:39 PM
I've submitted a skeleton of agat7 driver (https://github.com/mamedev/mame/pull/2146) -- lots to do until it's final, but many games already work:

Blitz clone

[Linked Image]
+
[Linked Image]

Pac-Man variant, with guns

[Linked Image]
+
[Linked Image]

Mario Bros. hack

[Linked Image]
+
[Linked Image]
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/14/17 06:46 PM
Heh. 48K Apple II games could pretty much be mechanically ported to anything with a 6502 and an agreeable memory map.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/12/17 12:24 AM
WIP -- Microsoft bus mouse clone + WordStar clone (ec1841 driver):

[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/12/17 12:29 AM
Originally Posted by shattered
Agat floppies are either 140K GCR (format is identical to Apple's) and 840K MFM (80 tracks, 2 heads, 21 sectors, 256 bytes per sector), but the address marks etc. aren't standard: https://raw.githubusercontent.com/sintech/AGAT/master/docs/agat-840k-format.txt


Quick and dirty HLE of this 840K controller appears to work -- the rest of emulation, not so much. Alice in Wonderland translation patch doesn't go beyond these startup screens:

[Linked Image]
+
[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/16/17 11:08 AM
Originally Posted by R. Belmont
Heh. 48K Apple II games could pretty much be mechanically ported to anything with a 6502 and an agreeable memory map.


Here's another find (from http://agatcomp.ru/Pravetz/SuperGames.shtml) -- apple2-based arcade board (fits inside the CRT case) with Mario translation patch

Not in MAME (yet :))

[Linked Image]
+
[Linked Image]
Posted By: Haze Re: ex- USSR and Soviet Bloc hardware - 07/16/17 11:12 AM
seems like Russia is the new Korea, but more creative in terms of what systems they hacked up ;-)
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 07/16/17 12:20 PM
Heh, that's great. Lemme see what I can do with it smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/16/17 03:44 PM
More agat9 wip. Plenty of emulation details are missing (notably the LLE of floppy board), but at least it passes memory banking test and some unprotected (or cracked) software runs:

[Linked Image]
+
[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/18/17 08:00 PM
Some intro screens while I work on (= copy and paste R.Belmont's code smile ) on apple2 video mode. There are all business apps (spreadsheets, databases &c). Most of the time apps don't run further than that...

[Linked Image]
+
[Linked Image]
+
[Linked Image]
+
[Linked Image]
+
[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/26/17 07:42 PM
https://www.youtube.com/watch?v=gbjEco-Lx_I -- Alice in Wonderland (translation patch) in attract mode. Compare with original: https://www.youtube.com/watch?v=6ff1gTH_6Cg
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/10/17 06:32 PM
Originally Posted by shattered
Originally Posted by shattered
SM 7238 aka T3300 -- yet another DECclone, likely not of a DEC original, but of something compatible -- this one is Intel MCS80-based, with no character generator chip. Technical manual is rather good, and mentions a graphics option with Tek 401x and ReGIS features.


Manual + schematics = working double-size chars and smooth scroll:

[Linked Image]

Cyrillic glyphs aren't very polished, though, compared with vt240-clone (mc7105).



When firmware thinks there is a graphics card, a Tek 4010 mode menu suddenly appears:

[Linked Image]

Graphic card is rather simple -- basically a "glass plotter" (no upd7220 there, it's all discrete chips).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/24/17 10:41 AM
Originally Posted by shattered
Originally Posted by R. Belmont
Heh. 48K Apple II games could pretty much be mechanically ported to anything with a 6502 and an agreeable memory map.


Here's another find (from http://agatcomp.ru/Pravetz/SuperGames.shtml) -- apple2-based arcade board (fits inside the CRT case) with Mario translation patch

Not in MAME (yet :))

[Linked Image]


I've took a stab at it but failed. If starting address is 0 (i.e. this dump is mapped at $C000 so that start address is read from $3FFC), then code makes some sense, but treats memory at $00xx as RAM, then accesses unknown slot devices and finally jumps into unknown (no matter what I add to $4000 it doesn't look like useful code):
Code
                  * = 0000
0000   E4 FF      CPX $FF
0002   A9 AD      LDA #$AD
0004   85 00      STA $00
0006   A9 E8      LDA #$E8
0008   85 01      STA $01
000A   85 05      STA $05
000C   A9 95      LDA #$95
000E   85 03      STA $03
0010   A9 00      LDA #$00
0012   85 04      STA $04
0014   A9 C0      LDA #$C0
0016   85 02      STA $02
0018   A9 D0      LDA #$D0
001A   85 06      STA $06
001C   A2 07      LDX #$07
001E   F8         SED
001F   D8         CLD
0020   2C 50 C0   BIT $C050
0023   A2 01      LDX #$01
0025   8E A0 C0   STX $C0A0
0028   AD E0 C0   LDA $C0E0
002B   8D 00 12   STA $1200
002E   E6 15      INC $15
0030   D0 F6      BNE $0028
0032   E6 16      INC $16
0034   E8         INX
0035   E0 70      CPX #$70
0037   90 EC      BCC $0025
0039   4C 00 40   JMP $4000
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/24/17 11:44 AM
Yeah, it's substantially altered from the plain Apple II Mario, at least in terms of the startup code.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/05/17 10:43 PM
Originally Posted by shattered
When firmware thinks there is a graphics card, a Tek 4010 mode menu suddenly appears:

[Linked Image]

Graphic card is rather simple -- basically a "glass plotter" (no upd7220 there, it's all discrete chips).


... and it seems to work (haven't understood it fully yet, so there are stray pixels):

[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/26/17 11:16 PM
Some progress on http://mametesters.org/view.php?id=5764 "radio4k: Display is not stable and flickers". This ROM uses SCC_END_OF_ROW_DMA chars, regular radio86 does not:

[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 01/10/18 06:50 PM
A different kind of progress -- digging in the "Ershov archive" (credit for this find goes to avivanov76) produced a 1982 document re: Apple II hardware purchase for Soviet Academy of Sciences: http://ershov-arc.iis.nsk.su/archive/eaindex.asp?did=7448&lang=2

It's not all just for work, btw -- Apple Stellar Invaders, Apple Trek/Star Wars, Apple Bowl, Sargon II, Checkers are on the wish list smile
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 01/10/18 07:58 PM
That's a seriously loaded II Plus: Disk II, the (now ultra-rare) Integer ROM card *and* a standard RAM language card, a Centronics board, a Thunderclock, a PROM burner board, a prototyping card, a Programmer's Aid #1 ROM, and a Monitor II.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/06/18 07:33 AM
Not hardware at all this time -- creative interpretation of La Marseillaise, Warszawianka and Soviet Union's hymn in the form of tracker module (dated 1991).

https://www.youtube.com/watch?v=QEz7IksoQm0

(Scream Tracker 2.2 running in ct486 with Covox output)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/14/18 07:36 PM
Originally Posted by shattered
It's supposed to look like this:

[Linked Image]

Not sure yet if emulation of ms7004 is inaccurate, or there was a different firmware for it.


Changing "out ^= ~mem;" to "out ^= mem;" in vram_w fixes video error:

[Linked Image]
Posted By: crazyc Re: ex- USSR and Soviet Bloc hardware - 10/14/18 09:46 PM
That's shown in the manual as "complement writing" mode. Maybe I misunderstood and thought that mem should be complemented? The logic unit is just a black box in the manual and it's behavior isn't well described.
Posted By: MetalliC Re: ex- USSR and Soviet Bloc hardware - 10/14/18 09:51 PM
does BK 0010-01 ever really worked ? I've been reported (and then checked myself) it is not - you may type commands and load some game(s), but ingame inputs not working, or acts like some keys pressed all the time.
not sure if its regressed or was like that since beginning.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/15/18 07:13 AM
Never tested the BK, but its native CPU (1801VM1) is not emulated, so anything that appears to work does so by accident smile

I did work on VM2 and made some progress (seen earlier in the thread), but the result needs a complete rewrite and I'm not quite sure where to start...
Posted By: MetalliC Re: ex- USSR and Soviet Bloc hardware - 10/15/18 05:19 PM
I see. anyway, if its not regression we should mark this system as not_working to not mislead people.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/13/18 08:09 PM
An incentive to make bk.cpp work- the Good Apple demo (2018):

https://www.youtube.com/watch?v=8Q1vN51o-Dg
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/15/18 07:31 AM
Originally Posted by crazyc
That's shown in the manual as "complement writing" mode. Maybe I misunderstood and thought that mem should be complemented? The logic unit is just a black box in the manual and it's behavior isn't well described.


Needs more testing -- I've just noticed that cursor disappears if this change is made, in vt240 as well.

There's also a video corruption issue involving scroll regions, easy to reproduce (output a screenful of text and then printf "\033[1;23r\033[23;1H\r\n") Worth a MT or github issue?
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 11/15/18 01:48 PM
I don't think a driver where nobody even understands the documentation is worth entering any issues.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/02/18 09:34 AM
https://www.computer.org/csdl/mags/co/1978/05/01646958.pdf "Using Emulation to Verify Formal Architechture Descriptions" (in this case PDP-11)

The tidbit about ASHC and V bit is interesting.
Posted By: Breiztiger Re: ex- USSR and Soviet Bloc hardware - 12/02/18 09:59 AM
http://www.atari-forum.com/viewtopic.php?f=115&t=29272&p=288656&hilit=BK+0010#p288656
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/01/19 07:05 PM
Continued from https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=114543#Post114543

I've added a skeleton driver for Palestra-02 console (a TTL-only Pong clone from 1978), and typed in most of its schematic (sans the paddle input circuits). There are bugs in the schematic (connections with no signal source &c), but I do not have the actual console to debug, so this is on hold until one is found somewhere.

Gorodki arcade (also TTL-only) has a much better chance of working - there are known good machine readable schematics, hopefully these can be converted from Proteus format to something nlconv can parse (pinging @IgorRus here).
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/04/19 01:52 PM
Robotron PC-1715W (yet another CP/M machine) WIP:

[Linked Image]

After that it does something that Z80DMA doesn't like and crashes MAME with fatal error ("Unknown base register").
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/11/19 10:04 PM
Wikipedia says that some games for PC-1715 used printer for sound effects (bell, paper feed) - that'd be fun to emulate smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/16/19 11:05 PM
Originally Posted by shattered
Turns out there were 3 variants of video boards -- ABS K7071 (text only), ABG K7072 (dumb framebuffer) and ABG K7075 (7220-based). The latter two are driven by KGS K7070 (terminal emulator with downloadable software).

K7072 wip:

[Linked Image]


WIP -- KES is a clone of iSBC-215 storage controller, but it's different internally (Z80 + Z80DMA + Z80CTC instead of 8089) and will need new code:

[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 04/11/19 08:56 PM
"Super Games ][" arcade board playing Mario Bros. bootleg/translation hack -- https://www.youtube.com/watch?v=6RUkvGV2zCI

Palette might be wrong and two player mode isn't working (yet)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 04/19/19 07:51 PM
From the "why not" department:

PS/2-mode floppy controllers have a RDDATA bit in the SRB status register, which essentially samples flux transitions incoming from the drive (each transition toggles the flip-flop and its output is the RDDATA).

"MX:" is the format used by floppy controller on Soviet PDP-11 compatible desktops (the DVK series). Low level encoding is FM, and track format is not compatible with IBM 3740 -- http://torlus.com/floppy/forum/viewtopic.php?f=19&t=1384

MXONPC (http://pdp-11.ru/mybk/pdp11/DRV/MXONPC.RAR) is a DOS program written by Vladimir Poletaev in 1997 to recover data from such floppies on a Pentium-class PC. And with a bit of hacking, it works in MAME (at least some of the time):

[Linked Image]

PR coming soon.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 04/22/19 09:12 PM
Yet another obscure Soviet TV game -- http://alemorf.ru/comps/kroha/index.html. Apparently, never reached retail.

Extremely simple design -- a 8080, two joysticks and a beeper. Black and white output. A single cart with five games (Breakout, Tetris, Snake, Xonix, Choplifter). Soon in MAME smile
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 04/22/19 09:33 PM
Speaking of Iron Curtain hardware, there was a new demo for the KC85 this weekend.

http://www.pouet.net/prod.php?which=81007
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 05/12/19 08:01 AM
Stalk - a Roguelike for the PDP-11(-clones). Inspired by the same book and movie as the S.T.A.L.K.E.R. series. Haven't played it much yet, but it feels appropriately deadly and user-unfriendly (only 6 items in the inventory, no identify, all scrolls, potions and wands are random, and so on).

[Linked Image]

(Killed by the hell slime)
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 06/06/19 08:37 PM
agat9 work in progress -- after switch from native to apple mode (LC emulation is broken):

[Linked Image]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/05/19 09:54 PM
That's now committed, not enough to mark the driver WORKING but enough to boot and run some Apple games -- http://agatcomp.ru/Gamez/DSK/MASTER_SERGE.rar (via http://agatcomp.ru/Gamez/Tom23.shtml). Disks 10...18 from this collection don't boot yet.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/22/19 06:27 PM
Originally Posted by shattered
Yet another obscure Soviet TV game -- http://alemorf.ru/comps/kroha/index.html. Apparently, never reached retail.

Extremely simple design -- a 8080, two joysticks and a beeper. Black and white output. A single cart with five games (Breakout, Tetris, Snake, Xonix, Choplifter). Soon in MAME smile


Gameplay video: https://www.youtube.com/watch?v=TApB1w1hExg
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/06/19 06:34 PM
Originally Posted by shattered
a bit more life -- self-test is passing

[Linked Image]


A previously unknown hardware variant turned up and was dumped, plus there's firmware source code. Some WIP:
[Linked Image]

Merging that code into mainline will take some doing, it's using a hacked T11 core and I don't have a clear idea how to rework it yet.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/15/19 04:23 PM
Originally Posted by shattered

Robotron A7150 WIP -- KES is a clone of iSBC-215 storage controller, but it's different internally (Z80 + Z80DMA + Z80CTC instead of 8089) and will need new code:


The hardware is annoyingly similar to the real thing, but not quite -- with these debugger hacks ACT passes and OS tries to boot from floppy, but halts halfway.

Code
# adapt to different memory layout on the KES; makes controller test pass
wpiset 4a,1,w,(wpdata==1 && w@92b==0xe),{ logerror "Hacking IOPB (xfer buffer)\n"; focus 0; temp1=920; w@(temp1+0xe)=4000; w@(temp1+0x16)=600; go }
bpset fcf76,1,{ cx=600; go }
# ACT passes transfer length 0, fix it
wpiset 4a,1,w,(wpdata==1 && b@92b==5),{ logerror "Hacking IOPB (read and verify)\n"; focus 0; temp1=920; w@(temp1+0x16)=200; go }
# firmware crashes, use a different command to fail hard disk test
wpiset 4a,1,w,(wpdata==1 && b@92b==3),{ logerror "Hacking IOPB (read id)\n"; focus 0; temp1=920; b@92b=8; go }


I suppose the next best thing is HLE, since hardware docs for actual storage controllers (iSBX clones) are missing.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 11/02/19 02:33 PM
Originally Posted by shattered
Stalk - a Roguelike for the PDP-11(-clones). Inspired by the same book and movie as the S.T.A.L.K.E.R. series. Haven't played it much yet, but it feels appropriately deadly and user-unfriendly (only 6 items in the inventory, no identify, all scrolls, potions and wands are random, and so on).


Gameplay video: https://www.youtube.com/watch?v=0y7RggMs_Ro
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 02/24/20 10:33 AM
Originally Posted by shattered
I've submitted a skeleton of agat7 driver (https://github.com/mamedev/mame/pull/2146) -- lots to do until it's final, but many games already work:
Pac-Man variant, with guns

[Linked Image from img-fotki.yandex.ru]
+
[Linked Image from img-fotki.yandex.ru]


Gameplay video -- https://www.youtube.com/watch?v=al4EuxS9Xlo
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/01/20 07:01 PM
Originally Posted by shattered
"Super Games ][" arcade board playing Mario Bros. bootleg/translation hack -- https://www.youtube.com/watch?v=6RUkvGV2zCI

Palette might be wrong and two player mode isn't working (yet)


xotmatrix decoded 2nd player's inputs (https://github.com/mamedev/mame/pull/6219) and this now works. Thanks!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/10/20 02:44 PM
Originally Posted by shattered
More agat9 wip. Plenty of emulation details are missing (notably the LLE of floppy board), but at least it passes memory banking test and some unprotected (or cracked) software runs:


LLE is mostly done now and more software runs, for example this 3rd party Sprite OS:

[Linked Image from i.imgur.com]

and someone ported Lurking Horror to it:

[Linked Image from i.imgur.com]
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/10/20 03:31 PM
Great! I love seeing more of the not-quite-Apple-IIs fully working.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/13/20 11:09 AM
rt1715w WIP -- card games, using loadable chargen for graphics:

[Linked Image from i.imgur.com]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 07/25/20 09:18 PM
Bowling and hedge maze simulators on rt1715w -- these might be original, but I didn't look very hard in the CP/M game archives:

https://youtu.be/fT1aDc82-kU
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/02/20 05:24 PM
Originally Posted by shattered
Some intro screens while I work on (= copy and paste R.Belmont's code smile ) on apple2 video mode. There are all business apps (spreadsheets, databases &c). Most of the time apps don't run further than that...
[Linked Image from img-fotki.yandex.ru]


This splash screen is animated, quite nice for a database software smile -- https://www.youtube.com/watch?v=P9vGfz6DWw4
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 09/02/20 06:24 PM
Heh, that's quite a nice animation for a database!
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/05/20 03:23 PM
Someone remade the "Vitamin" game from Agat -- https://n800.itch.io/space-lagat

https://www.youtube.com/watch?v=_DwwKA1W-t8
I haven't read through all thirty-eight pages of this thread, so apologies if this has already been covered – but I made it to the Museum of Soviet Video Games in St Petersburg (Russia) in 2019.

I have a bunch of photographs if any of them might be helpful.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/06/20 10:19 AM
Sure, photos are always welcome.
Temporarily uploaded to https://www.retrogamesformac.com/svg.zip – will leave them there for a week.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/15/20 09:38 PM
ec1842 WIP. This is almost a PC AT clone, sans second DMA chip and plus other funkiness (a modified 8086 clone plus an external MMU to support running software for 80286). Quite nice font, too:

[Linked Image from i.imgur.com]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/18/20 08:29 PM
ProDOS is almost working on agat9 (crashes after reading disk directory):

[Linked Image from i.imgur.com]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/25/20 07:14 PM
Recording of sales demo (made in IBM Storyboard Plus) for a few Soviet computers (big iron and PC clones), originally shipped with ec1842, and dated June 1991:

https://www.youtube.com/watch?v=ruY_TuuNOVg
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 09/30/20 07:44 PM
Most of remaining unemulated Soviet PC clones are not very interesting, but Istra-4816 is truly weird. It's not clear if it was designed as a PC clone from the start, or retrofitted later, but the finished product definitely runs DOS (and Prince of Persia).

It has three CPUs (two 8080 and one 8086), one 8080 does I/O emulation for the other two, another is described a 'supervisor' and may run its own OS (likely CP/M) concurrently with whatever is running on 8086. All three have shared access to RAM, but only IO cpu has access to ROM. Video hardware uses two 8275s and apparenty can mix text and graphics modes within scan line.

All in all, this is so weird that even with schematics (which are available) and ROMs (not yet) I'm not inclined to work on it smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/02/20 09:06 PM
bk0010 emulator for the Amiga: http://aminet.net/package/misc/emu/bkemul16 and article from Amiga Format #107 about it: http://simon.mooli.org.uk/AF/OldCommies.pdf
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 10/05/20 11:30 AM
Rather hilarious commentary on state of technical manuals in 1980s (from a trade magazine in 1985), lightly edited google translation:
Quote

It is known that some use microchips, others write books or articles about this process. In keeping with the fashion for various tests, I tried to compose a test for early detection of penchant for writing in this area. So, if you answer all the questions, you will surely know if you should write.

1. Is it necessary to know to which pins the power is connected to use the microchip? Required - 0 points, optional - 1 point.
2. Is it necessary to know its load capacity to use a logic chip, for example, a bus driver? How else? - 0 points. Somehow useless - 1 point.
3. If a chip with an open collector output has a maximum allowable voltage at this output of 6 V, can 15 V be applied to it? Of course not - 0 points. I applied and still works - 1 point.
4. Do you know how you can use the schematic diagram of an operational amplifier to apply it? It's impossible - 0 points. Why use them? - 1 point.
5. Which operational amplifier has higher slew rate of output voltage: the one for which it is 0.5 V / μs, or the one for which it was omitted? I wish I knew - 0 points. Is it so necessary to know? - 1 point.
6. Which RAM with a capacity of 1Kx1 is better for the user: with the organization 64x16 or 32x32? What's the difference? - 0 points. I know, but I won't tell anyone - 1 point.
7. Is it worth writing about how you managed to develop a microcomputer using KR580 chipset [MCS80 clone] without using the clock generator, system controller, interrupt controller? It's not literate - 0 points. And if the author did not have these chips in the cupboard - 1 point.
8. Should it be considered normal that for about half of the chips distributed centrally in 1986, there is no information in the corresponding reference books (for example, out of 44 types of operational amplifiers, there is information only about 18)? This is an outrage - 0 points. Let's wait another five years - 1 point.

If you got 0 points in total, you are probably an electronic equipment designer; if 8 points, you are a born author of literature on the use of microcircuits; if from 1 to 7 points, then you need to study a lot to become either a designer or a writer.
Posted By: =CO=Windler Re: ex- USSR and Soviet Bloc hardware - 01/20/21 04:08 AM
I own a defective Arton IK-51 music keyboard prototype made in USSR by Formanta (creators of the mythical Polivoks synth), which was their only instrument with digital sound, accompaniment and midi. The hardware contains 3 large PCBs (crowded like early 1980th arcade stuff). One of the eproms is corrupted, because they lost their stickers and so likely ate light. So it crashes after few key presses and the accompaniment is garbled.

I also own the Vermona SK-86 keyboard made in GDR, which contains Z80-based hardware with many logic ICs and analogue percussion. I dumped the eproms and even bought the original ultra-rare service manual of it, which (unlike the many Casio and Yamaha home keyboards) looks detailed enough to emulate the whole thing.

And I own a Weimar mantle clock made in GDR, which contains a bizarre monophonic digital beeping squarewave chime circuit made from many logic ICs and one eprom. One of the melodies (selectable by DIP-switch) may be a fragment of "Ein Jäger aus Kurpfalz). This also may have been a prototype, because I never saw another clock with this sound circuit nor found anything online about it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/26/21 06:47 PM
Originally Posted by shattered
ec1842 WIP. This is almost a PC AT clone, sans second DMA chip and plus other funkiness (a modified 8086 clone plus an external MMU to support running software for 80286). Quite nice font, too:

[Linked Image from i.imgur.com]

Technical manual for this machine hasn't surfaced yet, but here are some notes from a training course for service techs -- https://www.gleb.cz/ES1841/ES1841-Lections-FromSerg.zip

They do explain how the MMU works (second PDF, pages 27-31). POST uses it to test memory outside 640K range. There's also simpler memory banking hardware, driven via port 0x73 (same PDF, page 36).

poisk2 is a XT clone with RTC (mc146818 clone), 640K or 2MB memory (with built-in EMS support). It's not as interesting as poisk1, but has a hardware workaround for bad memory chips -- address lines are routed via SRAM and POST uses this to exclude them from linear addressing. You could probably build a multitasking DOS around that smile
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 12/28/21 01:59 PM
Working on K1801VM1 CPU core. It implements "Limited EIS" instruction set; silicon revision "G" also supports MUL opcode and has built-in timer.

Technical manual (reverse engineered from die shots) -- https://github.com/1801BM1/cpu11/raw/master/vm1/doc/1801vm1.pdf

This is a MS1201.01 SBC with that CPU, running modified PDP-11 BASIC from ROM, program loaded from paper tape:

[Linked Image from i.imgur.com]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/03/22 08:08 PM
Originally Posted by shattered
rt1715w WIP -- card games, using loadable chargen for graphics:

[Linked Image from i.imgur.com]

cp/m syscall tracing script I've used while working on this driver:


Code
bpset 5,1,      { logerror "BDOS call %3d arg %04x\n", c, de; go }
bpset 5,c==0x00,{ logerror "BDOS call %3d arg %04x = P_TERMCPM\n", c, de; go }
bpset 5,c==0x01,{ logerror "BDOS call %3d arg %04x = C_READ\n", c, de; go }
bpset 5,c==0x02,{ logerror "BDOS call %3d arg %04x = C_WRITE '%c'\n", c, de, e; go }
bpset 5,c==0x03,{ logerror "BDOS call %3d arg %04x = A_READ\n", c, de; go }
bpset 5,c==0x04,{ logerror "BDOS call %3d arg %04x = A_WRITE '%c'\n", c, de, e; go }
bpset 5,c==0x05,{ logerror "BDOS call %3d arg %04x = L_WRITE '%c'\n", c, de, e; go }
bpset 5,c==0x06,{ logerror "BDOS call %3d arg %04x = C_RAWIO\n", c, de; go }
bpset 5,c==0x07,{ logerror "BDOS call %3d arg %04x = A_STATIN\n", c, de; go }
bpset 5,c==0x08,{ logerror "BDOS call %3d arg %04x = A_STATOUT\n", c, de; go }
bpset 5,c==0x09,{ logerror "BDOS call %3d arg %04x = C_WRITESTR\n", c, de; go }
bpset 5,c==0x0a,{ logerror "BDOS call %3d arg %04x = C_READSTR\n", c, de; go }
bpset 5,c==0x0b,{ logerror "BDOS call %3d arg %04x = C_STAT\n", c, de; go }
bpset 5,c==0x0c,{ logerror "BDOS call %3d arg %04x = S_BDOSVER\n", c, de; go }
bpset 5,c==0x0d,{ logerror "BDOS call %3d arg %04x = DRV_ALLRESET\n", c, de; go }
bpset 5,c==0x0e,{ logerror "BDOS call %3d arg %04x = DRV_SET drive %d\n", c, de, e; go }
bpset 5,c==0x0f,{ logerror "BDOS call %3d arg %04x = F_OPEN drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }

bpset 5,c==0x10,{ logerror "BDOS call %3d arg %04x = F_CLOSE\n", c, de; go }
bpset 5,c==0x11,{ logerror "BDOS call %3d arg %04x = F_SFIRST\n", c, de; go }
bpset 5,c==0x12,{ logerror "BDOS call %3d arg %04x = F_SNEXT\n", c, de; go }
bpset 5,c==0x13,{ logerror "BDOS call %3d arg %04x = F_DELETE drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }
bpset 5,c==0x14,{ logerror "BDOS call %3d arg %04x = F_READ drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }
bpset 5,c==0x15,{ logerror "BDOS call %3d arg %04x = F_WRITE drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }
bpset 5,c==0x16,{ logerror "BDOS call %3d arg %04x = F_MAKE drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }
bpset 5,c==0x17,{ logerror "BDOS call %3d arg %04x = F_RENAME\n", c, de; go }
bpset 5,c==0x18,{ logerror "BDOS call %3d arg %04x = DRV_LOGINVEC\n", c, de; go }
bpset 5,c==0x19,{ logerror "BDOS call %3d arg %04x = DRV_GET\n", c, de; go }
bpset 5,c==0x1a,{ logerror "BDOS call %3d arg %04x = F_DMAOFF\n", c, de; go }
bpset 5,c==0x1b,{ logerror "BDOS call %3d arg %04x = DRV_ALLOCVEC\n", c, de; go }
bpset 5,c==0x1c,{ logerror "BDOS call %3d arg %04x = DRV_SETRO\n", c, de; go }
bpset 5,c==0x1d,{ logerror "BDOS call %3d arg %04x = DRV_ROVEC\n", c, de; go }
bpset 5,c==0x1e,{ logerror "BDOS call %3d arg %04x = F_ATTRIB\n", c, de; go }
bpset 5,c==0x1f,{ logerror "BDOS call %3d arg %04x = DRV_DPB\n", c, de; go }

bpset 5,c==0x20,{ logerror "BDOS call %3d arg %04x = F_USERNUM\n", c, de; go }
bpset 5,c==0x2c,{ logerror "BDOS call %3d arg %04x = F_MULTISEC?\n", c, de; go }
bpset 5,c==0x2d,{ logerror "BDOS call %3d arg %04x = F_ERRMODE\n", c, de; go }

bpset 5,c==0x31,{ logerror "BDOS call %3d arg %04x = 'Access SCB'\n", c, de; go }
bpset 5,c==0x3b,{ logerror "BDOS call %3d arg %04x = P_LOAD drive %d file '%c%c%c%c%c%c%c%c.%c%c%c'\n", c, de, b@(de), b@(de+1),b@(de+2),b@(de+3),b@(de+4),b@(de+5),b@(de+6),b@(de+7),b@(de+8),b@(de+9),b@(de+0xa),b@(de+0xb); go }
bpset 5,c==0x3c,{ do temp1 = w@(de+2); logerror "BDOS call %3d arg %04x = 'Call RSX' func %d name '%c%c%c%c%c%c%c%c'\n", c, de, b@(de), b@(temp1),b@(temp1+1),b@(temp1+2),b@(temp1+3),b@(temp1+4),b@(temp1+5),b@(temp1+6),b@(temp1+7); go }

bpset 5,c==0x62,{ logerror "BDOS call %3d arg %04x = 'Clean up disc'\n", c, de; go }
bpset 5,c==0x63,{ logerror "BDOS call %3d arg %04x = F_TRUNCATE\n", c, de; go }
bpset 5,c==0x6c,{ logerror "BDOS call %3d arg %04x = P_CODE\n", c, de; go }
bpset 5,c==0x6d,{ logerror "BDOS call %3d arg %04x = C_MODE\n", c, de; go }

bpset 5,c==0x98,{ do temp1 = w@(de); logerror "BDOS call %3d arg %04x = F_PARSE name at %04x '%c%c%c%c%c%c%c%c%c%c%c%c%c'(...)\n", c, de, temp1,  b@(temp1),b@(temp1+1),b@(temp1+2),b@(temp1+3),b@(temp1+4),b@(temp1+5),b@(temp1+6),b@(temp1+7),b@(temp1+8),b@(temp1+9),b@(temp1+0xa),b@(temp1+0xb),b@(temp1+0xc); go }
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 03/03/22 08:22 PM
Neat. That script will work for pretty much any Z80 CP/M, right?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 03/04/22 06:53 PM
Yep

It's not complete but easy enough to extend.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/07/23 09:39 PM
Robotron A7150 WIP -- V7 UNIX boots to single user

[Linked Image from i.imgur.com]
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/15/23 10:25 PM
BK-0010 WIP -- ANDOS boots from floppy

[Linked Image from i.imgur.com]
Posted By: ICEknight Re: ex- USSR and Soviet Bloc hardware - 08/15/23 10:37 PM
Originally Posted by shattered
de-skeletonized ms0515.cpp -- CPU is a clone of T11, video controller is Spectrum-like and there's a few ported (or maybe recompiled) games, f.e.

[Linked Image from img-fotki.yandex.ru]

Pull request soon. Shout out to Dr. Titus for being the first to emulate this machine in EmuStudio.
I was wondering, does this still work or has there been a regression? I found the dsk image which supposedly includes Saboteur 2 among other games but it seems to get stuck trying to auto-boot it.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/16/23 11:53 AM
Yes, there's been a regression after commit 6ea69b0ed967c898911d51fba9b6084b506e9849

Date: Thu Mar 30 10:22:58 2023 -0700

machine/wd_fdc.cpp: Dont clear DRQ on LDB/INTR, and fix spurious READ TRACk/ADDR FM mark syncs. (#11041) [Peter Phillips, Tim Lindner]
Posted By: R. Belmont Re: ex- USSR and Soviet Bloc hardware - 08/17/23 12:16 AM
Which of the changes did it? I would assume the second one?
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/17/23 05:26 PM
6ea69b0ed967c898911d51fba9b6084b506e9849 broke it
60ced2cb0c9c4ae9a2f6a65ff50b07fecee78f4c "wd_fdc: Drop DRQ when ending a normal command" fixed it
e992c500ccf306f7245158d6d5ee97661211dccf "wd_fdc: IRQ/DRQ corrections" broke it again
Posted By: Vas Crabb Re: ex- USSR and Soviet Bloc hardware - 08/17/23 05:31 PM
Originally Posted by shattered
6ea69b0ed967c898911d51fba9b6084b506e9849 broke it
60ced2cb0c9c4ae9a2f6a65ff50b07fecee78f4c "wd_fdc: Drop DRQ when ending a normal command" fixed it
e992c500ccf306f7245158d6d5ee97661211dccf "wd_fdc: IRQ/DRQ corrections" broke it again
Can someone open a proper issue on GitHub for this?
Posted By: AJR Re: ex- USSR and Soviet Bloc hardware - 08/26/23 02:39 AM
I was able to test the ms0515 regression myself, and found a likely cause. The current FDC emulation doesn't drop DRQ until a new command is *committed*, which is over a dozen microseconds after it is written. Meanwhile, a DRQ from the old Read Address command has not been serviced, so the CPU code polls and finds that right away, just about a microsecond before its Read Sector command is committed, and copies a spurious data byte (which should actually be part of the CRC) to address 0, throwing the rest off.
Posted By: shattered Re: ex- USSR and Soviet Bloc hardware - 08/28/23 02:08 PM
Originally Posted by shattered
De-skeletonized uknc.cpp shows signs of life:

[Linked Image from img-fotki.yandex.ru]

This machine was standard equipment in many computer classes in high schools, so there's plenty of educational software and games. There are two existing emulators, one of those is open-source (https://github.com/nzeemin/ukncbtl).

Working on a forward port of this code; one weird trick this hardware does is a byte-wide hookup of a 8255 to 16-bit bus without using byte-wide instructions, not sure how to handle that in MAME.

8255 is mapped at 177100-177103 and the code goes like this (https://raw.githubusercontent.com/shattered/retro-bios/master/ms0511-uknc/ROM5.lst):
Code
136004$:MOV	R5,-(SP)
	MOV	SP,R5
	MOV	#174,177103$
	MOV	#200,177102$
	JMP	136056$

and so mem_mask in write handler is 0xffff in both cases:

Code
[:subchan] ':subcpu' (136016) W 177102 <- 000174 & 177777
[:subchan] ':subcpu' (136024) W 177102 <- 000200 & 177777
© Forums