Previous Thread
Next Thread
Print Thread
Page 39 of 39 1 2 37 38 39
Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
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

Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
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.

Last edited by shattered; 10/05/20 11:49 AM.
Joined: Jan 2021
Posts: 127
Likes: 1
=
Senior Member
Offline
Senior Member
=
Joined: Jan 2021
Posts: 127
Likes: 1
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.

Last edited by =CO=Windler; 01/20/21 04:13 AM.

MAY THE SOFTWARE BE WITH YOU!

{weltenschule.de}
Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
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

Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
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]

Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
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 }

Joined: Mar 2001
Posts: 16,943
Likes: 69
R
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,943
Likes: 69
Neat. That script will work for pretty much any Z80 CP/M, right?

Joined: May 2012
Posts: 555
Likes: 1
S
Senior Member
OP Offline
Senior Member
S
Joined: May 2012
Posts: 555
Likes: 1
Yep

It's not complete but easy enough to extend.

Page 39 of 39 1 2 37 38 39

Link Copied to Clipboard
Who's Online Now
0 members (), 33 guests, and 2 robots.
Key: Admin, Global Mod, Mod
ShoutChat
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics9,132
Posts119,654
Members5,029
Most Online890
Jan 17th, 2020
Our Sponsor
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!

Superior Solitaire
Forum hosted by www.retrogamesformac.com