8th Aug 2020, 10:16 pm | #121 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
There's a nice evening breeze blowing in, and I feel like I'm among friends on these fora
I'm piecing together a specification for a VDU: Height of display area: 256 scan lines Width of display area: 32 microseconds Text pixel height: 1 scan line Text pixel clock: 4MHz Graphics pixel height: 4 scan lines Graphics pixel clock: 2MHz It'll need base page select (4 bits) and char/graphics select. Ask nicely for inverse video Incidentally, the way they implemented inverse video on the original SOC VDU is naff. Can't see it working at all I've decided I don't need to build an Mk14 to test this out - I can just wire it to an EPROM that I've pre-loaded with some images. Maybe someone would be prepared to trial it on real hardware if/when I get it done...? |
8th Aug 2020, 10:54 pm | #122 | |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: Mk14 vdu
Quote:
Your not confusing it with the "reverse pages" bit that swaps the address range of the upper and lower halves of the display? or are you concerned the front and back porches are not black level?l |
|
8th Aug 2020, 11:14 pm | #123 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
It's the lack of porches that bother me but I guess they got away with it.
The character font looks like your common-or-garden 5x7 which, on an 8 pixel horizontal pitch would explain the wide spacing of the displayed characters. And I assume it is uppercase only? So what's the story with swapping pages. etc. Presumably the essential need is to display a contiguous 512 byte range of memory but with a 256 base resolution...? |
8th Aug 2020, 11:55 pm | #124 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: Mk14 vdu
I think analog televisions were far more forgiving than later ones.
The bottom 8 bits of the memory address to display are generated by the counter, and the top 4 bits are set to whatever is on pins b9..b12. Additionally there is an output on b17 that is '1' on the top half of the screen and '0' on the bottom half (ordinarily - see later) so if you set all of b9-b12 to zero, you'd see the first 256 bytes of the monitor rom displayed twice. If you connect b17 (top) to b9 (address 8) then it will display 01xx at the top and 00xx at the bottom of the screen. If you want to show a contiguous section of memory pulling b15 (reverse pages) inverts the top signal so you would show 00xx at the top and 01xx at the bottom. The "normal" config is to pull b9,b10 and b12 high and connect b17 (top) to b11 so it displays 0Fxx at the top and 0Bxx at the bottom or the other way round if b15 is high! I'm pretty sure this is correct, its what I've gathered from posts on here and what I've worked out from the schematic, I'm sure someone will correct me if I am wrong..... |
9th Aug 2020, 12:19 am | #125 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,553
|
Re: Mk14 vdu
Yes, that's all correct as far as I can see.
The character set is not only upper case but a limited subset, 64 characters. The VDU character set has been posted a couple of times in MK14 related threads but surprisingly not yet in this one, so here it is. Code:
@ 00 A 01 B 02 C 03 D 04 E 05 F 06 G 07 H 08 I 09 J 0A K 0B L 0C M 0D N 0E O 0F P 10 Q 11 R 12 S 13 T 14 U 15 V 16 W 17 X 18 Y 19 Z 1A [ 1B \ 1C ] 1D ^ 1E _ 1F 20 ! 21 " 22 # 23 $ 24 % 25 & 26 ' 27 ( 28 ) 29 * 2A + 2B , 2C - 2D . 2E / 2F 0 30 1 31 2 32 3 33 4 34 5 35 6 36 7 37 8 38 9 39 : 3A ; 3B < 3C = 3D > 3E ? 3F The character set is hard coded within the character generator IC. In post #20 of this thread Slothie linked to a hardware emulator of this character generator IC, a look through that may yield more useful information. I didn't find a data sheet for the DM8678CAB in the short time I spent looking, no doubt Tim will be along with one in a minute or two. |
9th Aug 2020, 12:30 am | #126 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
Many thanks for clarifying everything, guys.
I think I've got it! |
9th Aug 2020, 10:38 am | #127 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,553
|
Re: Mk14 vdu
Found the DM8768 data sheet at last - took some finding as Nat Semi decided to class it as a 'Memory Device'.
Section 7-35 (or PDF page 358) of this Nat Semi Databook on Bitsavers:- http://www.bitsavers.org/components/...y_Databook.pdf It even has the character set dot patterns for all versions including our 'CAB' variant. Should save a bit of time. |
9th Aug 2020, 7:33 pm | #128 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
Great find - I had been searching for it for a while - I can see why they consider it memory as it looks like they offered custom character set loading into the PROM or MASK ROM for manufacture described on page 7-45 to be given on a set of punch cards!
|
9th Aug 2020, 7:36 pm | #129 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
The lack means that I cannot run mine with the Inverse function on of black characters on a white background but, both my modern 1990's ( ) Colour Philips Portable and my 1970's Sony B/W sets work fine with the white on Black characters. Better than my early ZX81 in some ways which only works a bit on the Sony as of course it was black on white by default.
|
9th Aug 2020, 7:54 pm | #130 | |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
Quote:
I second the alternate modern VDU option - the technology may allow a way to prototype the operation of one for the SCRUMPI as well... |
|
9th Aug 2020, 9:08 pm | #131 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
Remind me again: what sort of connector was on the SOC VDU?
I see it labelled 'a' row and 'b' row. As I remember, those DIN41612 connectors could go up to three row (a, b and c). But you could get 'a' and 'b' row only. They were a narrower connector. |
9th Aug 2020, 9:26 pm | #132 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
They are the narrower two row versions - rather than the three row with B missing.
|
9th Aug 2020, 9:31 pm | #133 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
I think it was a loose standard as I have seen real ones with just plain edge connections direct to the MK14 but, the SoC adverts showed the DIN connector. The LCDS used the three row ones as an aside.
|
9th Aug 2020, 10:16 pm | #134 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
And the VDU connector was male...?
They didn't make it easy to wire up this VDU to the Mk14, did they? In fairness though, it would have been quite some foresight to have planned for the VDU when the Mk14 was first conceived. |
9th Aug 2020, 10:36 pm | #135 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,363
|
Re: Mk14 vdu
Yes sorry it is male connector. I was thinking that as Nick joined SOC later that maybe he had designed an expansion system and this was his first card as it is a standard euro card he probably used a standard prototype card maybe leading to the use of that connector? All conjecture of course.
|
9th Aug 2020, 11:18 pm | #136 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,553
|
Re: Mk14 vdu
As mentioned elsewhere there is a broadly established convention that where 'A' supplies power to 'B', 'A' will always have a female connector and 'B' will always have a male connector.
This is so that if ever 'A' is used without anything plugged into it, the supplies are not exposed on bare male pins which might get shorted out by something. The connector on my original SOC VDU is two-row (a/b) DIN male, but I put that on quite recently ~ 8 years ago. No connector was supplied with the VDU kit, so it was quite likely that many original MK14 / VDU owners did what I originally did, soldered wires into the a and b holes on the VDU and took the other ends of those wires to wherever they needed to go on the MK14, resulting in one unholy mess. Prior to issue IV the MK14 PCBs didn't even have contacts on the track / print side of the rear edge connector. From issue IV they did, but there were no tracks going to them. Last edited by SiriusHardware; 9th Aug 2020 at 11:42 pm. |
10th Aug 2020, 1:28 am | #137 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
My impression is that I can build a VDU to SOC spec using the crummy PICs I restrict myself to, but it may do things in a slightly different way to hardware, e.g. the PIC code may fetch the 8/16 bytes it needs from memory during the blank video to the left of the display area, and then feed them to the video shift register (aka serial port) from an internal buffer. And I can put porches on the inverse video mode
|
10th Aug 2020, 8:56 am | #138 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,553
|
Re: Mk14 vdu
It's certainly an acceptable 'mod' to assume that most if not all people will be using a direct composite connection rather than pushing it through a UM1233 modulator and analogue tuner.
The majority of displays being used will post-date the MK14 by a decade or more so I would suggest that the addition of the missing porches is a must, really. |
10th Aug 2020, 9:15 am | #139 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,553
|
Re: Mk14 vdu
What will be your weapon of choice for this duel, Karen? I have 40-pin DIP 16F877, 16F887 and 18F452 at my disposal. if you are thinking of using something else I may have to order one up.
|
10th Aug 2020, 11:25 am | #140 |
Rest in Peace
Join Date: Jul 2011
Location: Bridgnorth, Shropshire, UK.
Posts: 787
|
Re: Mk14 vdu
Hi SH,
My preference is 16F877 but a quick count of I/Os suggest I'll run out! A0..A11 12 D0..D7 8 NRDS 1 NENIN 1 Page 4 TOP 1 SWAP 1 VDU off 1 INVERT 1 CH/GRFX 1 Video 1 Sync 1 Serialclk 1 ----- 34 (the 16F877 has 33 I/Os) So I think I'll go for 16F887 (35 I/Os) |