Note: My RGBI ==> RGB ==> gnobes video converter == modern monitor setup had difficulty syncing with your default 295 scanline version of 8 x 1 mode. Using the same setup, the PAL (312 line) and NTSC (263) variations display every time without issue. All 3 variations work without any issues on my 1084s monitor.
Basically because the screen line counter for the screen rows overflows using the trick to display 8 x 1 mode, an addition 32 lines are generated per screen
Is this by observation? Maybe it is possible to reduce the number of total lines so that the counter does not overflow and display the maximum number of lines in NTSC-compatibility-mode?
I've modeled this in the Z64K's new unreleased VDC emulation and I'm getting exactly the same results as real hardware. The test program confirms the number of scan lines per method.
*I will need to do some more testing but I think if you want to avoid the overrflow you will need to set Vertical Total (register 4) to a value that is at least the value in Vertical Displayed (register 6) + 2. I think in this case though the attribute pointer will be shifted by 3 bytes similar to what happens in Risen from Oblivion.
EDIT: looking my model without testing, the above will fail to avoid the overflow. Instead I think you need to delay at least one scan line before setting the cth back to a non zero value. I will check this later and confirm.
You can have some control over the displayed lines by reducing the cth. ie. us 2 instead of 7 to gain an extra 5 lines. Of course update register 4 and 6 as appropriate.
Thanks, my thinking is to find the maximum possible vertical resolution for PAL and NTSC and then release a new VDC Mode Mania V1.2 with both 8x1 modes :-)
That would be awesome!! I'll keep on testing and let you know what I find.
I'll also be releasing the new VDC emulation with Z64K very soon with almost everything I've discovered as discussed in all my recent posts including the busy status flag behavior. That will most likely be next week sometime once I'm confident I haven't broken anything.
I played around a little with the NTSC-values. The best I got so far are:
Change register 1 (Horizontal Total) back to 126 Change register 4 to 228 Change register 6 to 227 Change character Total Height back to default $02 when transitioning from character height 0.
This combination also gives $4047 with your little tool (I hacked the values into it using TEDMON)
I tried going to $01 for cth but this somehow messed up the graphic. Not sure why it does not work. It seems to go from $01 to $00 is too small a step and the VDC ignores this somehow? I suhgest you experiment a little with this.
Also I noticed in your original NTSC-mode the last visible line on the screen always had strange color (i.e. does not display correctly). Can you see this as well?
I also noticed a terrible error in VDC Mode Mania V1.11 that must have slipped in there. In line 3000 it tries to load and set the "settings.itf"-file. This will set register 7 to a totally wrong value if the file exists. I replaced the version on my server with a fixed one: www.tokra.de/c128/vdcmodemania-v111.zip I kept the version number for now since I suppose a VDC-FLI-update is coming up soon-ish.
Nice work. I'm at work at the moment so I will need to test when I get home.
Yes, I'm pretty sure there were some "strange colours" at the bottom of the original NTSC version on my real C128. The new unreleased version of the VDC emulation for Z64K shows this as well. It seems to be extra attribute data being fetched and being displayed...
I just tested with your updated NTSC mode with the new unreleased VDC emulation of Z64K using 1 instead of 2, also adjusting register 4 to 229 and register 6 to 227, and it doesn't work as you described in that either(See figure 1). I will compare the display to my real C128 when I get home. Using the value of 2 version as documented in your post it works perfectly using the new unreleased VDC emulation in Z64K (See figure 2).
There are still things I've tested where my model fails from some of tests I've done so I still have heaps of work to do to get it perfect but it seems I'm on the right track with my model at least.
Your NTSC mode seems to be the best one at this stage but I will keep working on improving the model Z64K uses to be as close to real hardware as possible which will hopefully let us discover the best resolutions that can be displayed for NTSC and PAL 8 x 1 images.