Author Topic: pixel clocks  (Read 3214 times)

0 Members and 1 Guest are viewing this topic.

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
pixel clocks
« on: 15:54, 07 August 14 »
If I worked it out correctly:

- CPC's pixel is the same height as a square pixel in PAL television. CPC's mode 1 pixel is a bit thinner than it is tall.
- CPC's mode 1 pixel is 8% narrower than a PAL television pixel meaning that the pixels are not square but a little bit narrower.
- C64's hi-res pixels are 1.5% wider than CPC's mode 1 pixels
- Spectrum's pixels are 12.5% wider than CPC's mode 1 pixels.
- Spectrum's pixels are slightly larger than PAL pixels so are almost square.

CPC has exact PAL line frequency when 64 chars per line are used (15652hz), the frame frequency is 50.08hz.
Dot clock of PAL is 7.375 for square pixels. CPC's mode 1 is 8Mhz.

So, if you are using an emulator and using a PC display mode with square pixels, you're not getting the correct display ;) But I think we knew that already!

Does anyone know how to find out the grill aperture and dot spacing for the Amstrad's monitor tube?
Is it a standard PAL tube? If so, how can it display mode 2 so well?

I know that it will have a better picture because there is no colour conversion being done, direct rgb to the monitor.


« Last Edit: 15:57, 07 August 14 by arnoldemu »
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline ralferoo

  • Supporter
  • 6128 Plus
  • *
  • Posts: 967
  • Country: gb
  • Liked: 580
  • Likes Given: 221
Re: pixel clocks
« Reply #1 on: 22:59, 07 August 14 »
Does anyone know how to find out the grill aperture and dot spacing for the Amstrad's monitor tube?
Take a photo with a high zoom; all will be revealed... :D

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #2 on: 23:24, 07 August 14 »
Take a photo with a high zoom; all will be revealed... :D
I never have much luck taking close pictures in focus, or with high zoom ;)

I am trying to work out how to accurately emulate the monitor of the cpc. I am assuming the monitor of the CPC is a PAL television tube (I don't really know) so I am comparing it to that. But we don't have interlace because it's a progressive picture. We also don't have most of the colour issues, because it's direct RGB into the monitor (no colour space conversion), but we do have moire patterns in mode 2. There are potentially patterns in mode 1 too, but much less easy to see I think. I am also comparing it to the pixel dimensions on the C64/Spectrum which are said to have similar pixel sizes.

I measured the CM14 screen.  This is the visible area. It is 28.5 cm. 285mm. Assume max width is 48 chars. 384 pixels in mode 1.

285/384 = 0.74mm per pixel in mode 1. 0.371mm per pixel in mode 2.
A document quotes that the best SDTV's have a dot pitch of 0.4mm.

if we say the pixel offsets are:
0, 0.371, 0.742

and the dot pitch is:
0, 0.4, 0.8

We could predict where these patterns should be, potentially adding extra colour in mode 2.


My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #3 on: 23:25, 07 August 14 »
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #4 on: 10:15, 11 August 14 »
A couple more things to note:
1. If I assume the gamma of a cpc monitor is the same as a PAL television, then it has a gamma of 2.5. A PC monitor has a different gamma. If we don't gamma correct then it will come out with the wrong gamma. It needs to be adjusted so that it comes out with the same gamma as an Amstrad monitor.
2. Black is not fully black. I think a sync pulse is forced to absolute black, but the black colour is not black. It's very close. This can be seen if you increase the brightness on the monitor.

At least this is what this is saying:

"The MM12 monochrome incorporates a 12" paper white tube, similar to that used on the PCW9512. The input will be the same as the earlier GTM65 versions, i.e. impedance 470 ohms to 0V, analogue voltage input which is linear between 0.8V (Black) and 1.75V (Peak white).
The CM14 colour monitor needs to handle a sixteen level input on each of RGB. The new monitor must present an input impedance of 100 ohms to 0V, and accept an analogue input current of 0-10mA for each gun. The levels shall be defined such that 0mA is black and 10mA is full on. The response must be linear between these limits. "

For monochrome monitor black is not 0V. Sync may be 0V.

EDIT: I think MaV (?) posted a close up screenshot of an Amstrad monitor showing the colour dots. I can't remember if that was CTM644 or CM14?
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #5 on: 10:26, 11 August 14 »
Does anyone know how the gamma of the monitor "works"? Is it the intensity of the electron beams for each colour, or is it down to the actual coating on the tube and how it reacts to the electrons hitting it?

The colours come from 3 seperate electron beams? Or is it on the surface where they hit and the "grille" or other bit control how the beam hits it and stops the wrong colours?

The brightness, is that a gamma adjustment, or more of a electron beam intensity?

From secondary school, The tube is a vacuum, at one end the electron beam comes from an emitter (where the heater part is), it is controlled by a vertical and horizontal magnet thing (deflection coils) which controls it's trajectory and ultimately it's position on the screen. What you see on the screen is the electrons hitting a coating on the inside of the visible part of the tube, they glow. The image is generated from top-left to top-right and to keep it refreshed it must be repeated over and over, because after some time the image will fade, the fading is the property of the coating.

I know that TFT monitors work very different in that each pixel is a cell of liquid crystal. When electricity is applied the cell goes dark blocking light (just like a polaroid filter). The back of the monitor is white, it is lit either from the sides or from the back (but normally the sides). The colours are a layer over the top effectively, so when light is let through the colour shows, when it's block it's effectively black.

But I want to know more about how the CRT monitors/television work so I can make something closer to cpc.
My initial plan is to take an image and adjust it using a program to get a result that is closer to what we see on the cpc.

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.624
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 890
  • Likes Given: 1545
Re: pixel clocks
« Reply #6 on: 10:45, 11 August 14 »
I don't think I'm gonna be of much help here, but I noticed on my monitor it has Vertical & Horizontal lines through the monitor, the emulators seem to only account for the Horizontal ones. Perhaps it's this which makes up how the Pixels get displayed on the monitor too?
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline Bryce

  • The Hardware Guy.
  • Supporter
  • 6128 Plus
  • *
  • Posts: 10.877
  • Country: wf
  • It's not broken, it just hasn't been fixed yet.
    • index.php?action=treasury
  • Liked: 3821
  • Likes Given: 391
Re: pixel clocks
« Reply #7 on: 11:12, 11 August 14 »
Wow, you're getting into old-school analogue electronics here. Let me put my "Bryce back in university" hat on....

You've nicely (and correctly) described how the tube works, so here's the rest. This is difficult to explain, let me give you an example:

Let's say the Red input signal (at the connector) has a range from 0 to 5V with 0V = no red at all and 5V to be the brightest, this in turn is translated into a voltage on the electron coil (which we'll say is 0V to 100V for this example). This range can be tuned with the brightness control so that 0V input results in 0V on the coil (very dark screen) or 0V = 10V on the coil (very bright screen), but 5V would then be 110V on the coil. So the brightness control is shifting the entire "translated" range, both minimum value and maximum value and it's done for all three colours at the same time, not individually for each colour.
Now the gamma "problem": If 0Vin = 0Vcoil and 5Vin = 100Vcoil, then you would expect that that 2.5Vin would equal 50Vcoil, but it doesn't. The reason being, that coils don't emit in a linear fashion. The coil has a triodal curve, so to emit 50% of full brightness the coil needs maybe 60V. This variance from linearity obviously needs to be compensated for. In some monitors gamma correction is built in, in other systems the gamma correction can be done on the system side, so that the Vin values are also not linear. If the computer doesn't have the possibility to adjust the gamma compensation, then it needs to be done in the monitor.

Did that help, or are you even more confused now? :D

Bryce.

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #8 on: 11:20, 12 August 14 »
Yes that helped :)
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #9 on: 15:33, 12 August 14 »
For the moment, back to pixel clocks:

The GX4000 has a 39.902571 Mhz master clock.

"The main oscillator for the ASIC will be 40MHz. A divide by 9 output at
4.444MHz is provided with a 5:4 mark/space ratio. It will be possible to
change the main crystal to 9 x 4.33619MHz = 39.902571 MHz, slowing the whole
system by 0.25%. This may or may not upset the disk drives, but even if this
is the case, a diskless unit could provide PAL subcarrier frequency locked to
the master oscillator, thus improving the picture quality."

OSC1 is the master clock.
PALCLK is the 4.33619Mhz clock
CLK4 is now 3.9902571 compared to 4Mhz.
CLK16 is now 15.9610284Mhz
CLK1 is 0.99756427Mhz

CPU is running slower as they say. 0.25% slower.
AY-3-8912 is running slower, so the sound is slightly out of tune?
If it had a FDC it would be slower (it does mention this).

I haven't worked out the timings for the frame yet, but I am sure the pixels will be wider.

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #10 on: 15:34, 12 August 14 »
I haven't worked out the pixel clocks for the aleste yet. It has a switchable mode between 16Mhz master clock and 13Mhz master clock!
 ???
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline MaV

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.094
  • Country: at
  • Ius summum saepe summa est malitia.
  • Liked: 385
  • Likes Given: 816
Re: pixel clocks
« Reply #11 on: 21:50, 12 August 14 »
EDIT: I think MaV (?) posted a close up screenshot of an Amstrad monitor showing the colour dots. I can't remember if that was CTM644 or CM14?
Not that I know of, but that can be arranged provided my camera focuses close up shots correctly.
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 14.941
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 2916
  • Likes Given: 5079
Re: pixel clocks
« Reply #12 on: 20:18, 28 August 14 »
I can try tomorrow if needed. Is there a pattern/image anyone would prefer to be photographed?

Offline MaV

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.094
  • Country: at
  • Ius summum saepe summa est malitia.
  • Liked: 385
  • Likes Given: 816
Re: pixel clocks
« Reply #13 on: 21:09, 28 August 14 »
I sent arnoldemu pictures of my CTM640.

Perhaps other samples might prove valuable as well (from different productions maybe).
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.332
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2251
  • Likes Given: 3477
Re: pixel clocks
« Reply #14 on: 22:11, 28 August 14 »
I sent arnoldemu pictures of my CTM640.

Perhaps other samples might prove valuable as well (from different productions maybe).
Yes I got the pictures but I didn't analyse them yet.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource