First post, by SoftCat
Can anyone tell me what the BBC Micro's CRTC settings are in 640x256 graphics mode?
Can anyone tell me what the BBC Micro's CRTC settings are in 640x256 graphics mode?
This information can be found at https://archive.org/details/bbc-micro-advance … ge/360/mode/2up pages 361-366. For modes 0-2:
R0 = 127
R1 = 80
R2 = 98
R3 = 8
R4 = 38
R5 = 0
R6 = 32
R7 = 34
R8 = 0
R9 = 7
reenigne wrote on 2026-01-19, 10:34:This information can be found at https://archive.org/details/bbc-micro-advance … ge/360/mode/2up pages 361-366. For modes 0-2: R […]
This information can be found at https://archive.org/details/bbc-micro-advance … ge/360/mode/2up pages 361-366. For modes 0-2:
R0 = 127
R1 = 80
R2 = 98
R3 = 8
R4 = 38
R5 = 0
R6 = 32
R7 = 34
R8 = 0
R9 = 7
Thank you very much!
It turns out that the BBC Micro video signal complies with the PAL/SECAM standards.
The total line duration is: (R0 + 1) * 8/16 = 64 µs.
The total frame duration is: (R4 + 1) * (R9 + 1) / 15.625 = 19.968 ms.
Indeed it does, being a British machine! There was also an NTSC version I think, but I don't know what the CRTC parameters are for that.
CGA also had PAL/SECAM versions, also running at 16 MHz. But without the 6845 and with RGB and monochrome composite outputs.
I've never come across a PAL version of CGA before! Can you point me to an example? The Amstrad PC1512 is another British computer that was (mostly) CGA compatible but it uses NTSC timings, same as IBM CGA. That one also didn't use a 6845 but didn't have any kind of composite output.
reenigne wrote on 2026-01-20, 08:23:I've never come across a PAL version of CGA before! Can you point me to an example? The Amstrad PC1512 is another British computer that was (mostly) CGA compatible but it uses NTSC timings, same as IBM CGA. That one also didn't use a 6845 but didn't have any kind of composite output.
The Russian "Электроника МС 1502" is IBM PC compatible and has a CGA-like video adapter with PAL/SECAM timings:
https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0 … 0%9C%D0%A1_1502
Even the original Digger worked correctly on it. That is, for the programmer, it emulated the original CGA. I even found a video online. Here Digger is translated into Russian, but the original also works.
https://www.youtube.com/watch?v=2fFnCFx0HuU
And the 8-bit Russian "Ириша" has a CGA-like video adapter with PAL/SECAM timings:
https://ru.wikipedia.org/wiki/%D0%98%D1%80%D0%B8%D1%88%D0%B0
The Sinclair PC200 can output CGA to a PAL TV - attempts to program the CGA registers trigger a NMI and the BIOS writes its own set of register values:
crt_co40_params db 38h, 28h, 2Fh, 4, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_co80_params db 71h, 50h, 5Eh, 8, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_gfx_params db 38h, 28h, 2Fh, 4, 7Fh, 6, 64h, 70h, 2, 1, 6, 7, 0,0,0,0crt_mda_params db 61h, 50h, 53h, 0Fh, 19h, 6, 19h, 19h, 2, 0Dh, 0Bh, 0Ch, 0,0,0,0tv_co40_params db 38h, 28h, 2Dh, 4, 26h, 0, 19h, 1Eh, 2, 7, 6, 7, 0,0,0,0tv_co80_params db 71h, 50h, 5Ah, 8, 26h, 0, 19h, 1Eh, 2, 7, 6, 7, 0,0,0,0tv_gfx_params db 38h, 28h, 2Dh, 4, 7Fh, 18h, 64h, 78h, 2, 1, 6, 7, 0,0,0,0tv_mda_params rb 10h
It's based on the PPC512 laptop, which has the same NMI mechanism for displaying CGA or MDA modes on its built-in LCD.
crt_co40_params db 38h, 28h, 2Fh, 4, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_co80_params db 71h, 50h, 5Eh, 8, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_gfx_params db 38h, 28h, 2Fh, 4, 7Fh, 6, 64h, 70h, 2, 1, 6, 7, 0,0,0,0crt_mda_params db 61h, 50h, 53h, 0Fh, 19h, 6, 19h, 19h, 2, 0Dh, 0Bh, 0Ch, 0,0,0,0lcd_co40_params db 2Eh, 28h, 29h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0lcd_co80_params db 5Ch, 50h, 51h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0lcd_gfx_params db 2Bh, 28h, 2Ah, 1, 6Bh, 0, 6Bh, 64h, 2, 1, 6, 7, 0,0,0,0lcd_mda_params db 5Ch, 50h, 51h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0
JohnElliott wrote on 2026-02-19, 23:38:The Sinclair PC200 can output CGA to a PAL TV - attempts to program the CGA registers trigger a NMI and the BIOS writes its own […]
The Sinclair PC200 can output CGA to a PAL TV - attempts to program the CGA registers trigger a NMI and the BIOS writes its own set of register values:
crt_co40_params db 38h, 28h, 2Fh, 4, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_co80_params db 71h, 50h, 5Eh, 8, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_gfx_params db 38h, 28h, 2Fh, 4, 7Fh, 6, 64h, 70h, 2, 1, 6, 7, 0,0,0,0crt_mda_params db 61h, 50h, 53h, 0Fh, 19h, 6, 19h, 19h, 2, 0Dh, 0Bh, 0Ch, 0,0,0,0tv_co40_params db 38h, 28h, 2Dh, 4, 26h, 0, 19h, 1Eh, 2, 7, 6, 7, 0,0,0,0tv_co80_params db 71h, 50h, 5Ah, 8, 26h, 0, 19h, 1Eh, 2, 7, 6, 7, 0,0,0,0tv_gfx_params db 38h, 28h, 2Dh, 4, 7Fh, 18h, 64h, 78h, 2, 1, 6, 7, 0,0,0,0tv_mda_params rb 10hIt's based on the PPC512 laptop, which has the same NMI mechanism for displaying CGA or MDA modes on its built-in LCD.
crt_co40_params db 38h, 28h, 2Fh, 4, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_co80_params db 71h, 50h, 5Eh, 8, 1Fh, 6, 19h, 1Ch, 2, 7, 6, 7, 0,0,0,0crt_gfx_params db 38h, 28h, 2Fh, 4, 7Fh, 6, 64h, 70h, 2, 1, 6, 7, 0,0,0,0crt_mda_params db 61h, 50h, 53h, 0Fh, 19h, 6, 19h, 19h, 2, 0Dh, 0Bh, 0Ch, 0,0,0,0lcd_co40_params db 2Eh, 28h, 29h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0lcd_co80_params db 5Ch, 50h, 51h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0lcd_gfx_params db 2Bh, 28h, 2Ah, 1, 6Bh, 0, 6Bh, 64h, 2, 1, 6, 7, 0,0,0,0lcd_mda_params db 5Ch, 50h, 51h, 1, 1Ah, 0, 1Ah, 19h, 2, 7, 6, 7, 0,0,0,0
Thank you very much for the information. For tv_gfx_params , the total number of lines is 280, not 312.
And the horizontal frequency will be the same as on NTSC. It should be 15625 Hz.