[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Apple //e Upgrade to 640x192 Resolution?



Hi folks,

    Do you have your desire to upgrade from 560x192 resolution to 640x192 
resolution for NTSC monitor using CGA font?  If your answer is yes, it is 
only a way to modify the timing in HAL16R8 chip and IOU chip.
    Remember, LDPS' is the Load Parallel 8 Bit and Shift one bit out.  The 
timing always runs every 14 periods so 14 pixels are sent to the screen, but 
8th bit is ignored.  I can be able to modify timing equations in the HAL16R8 
chip so it would be 16 periods running using 14MHz crystal osc chip.  Here 
is how I can do it.
    Forty group of 14 pixels (40 video cycles) plus undisplayed 25 video 
cycles (total 65 video cycles) to be sent to the screen each horizontial 
line to sustain 560x192 resolution.  I would try to do 40 group of 16 pixels 
(40 video cycles) plus undisplayed 17 video cycles (total 57 video cycles) 
to be sent to the screen each horizontial line to sustain 640x192 
resolution.
    Each horizontial line always have 912 dots.  Long cycle is required to 
correct color reference during 65 video cycles, but it is not required 
during 57 video cycles.  Think of (64 video cycles * 14 periods) + (1 video 
cycle * 16 periods) = 912 dots.  Compare with (57 video cycles * 16 periods) 
= 912 dots.
    Without long cycle, 1 MHz for 6502 CPU and video scanner and 2 MHz for 
RAM are running perfect without any affection like 3.5MHz, 7MHz, and 14MHz 
are not affected.
    To be compatibility...Video ROM chip needs to be modified to use CGA 
font for TEXT.  LoRes data and HiRes data need to be modified too in the 
video ROM chip.  Also, IOU chip needs to be modified to sustain 57 video 
cycles in the video scanner and blanking signal.
    You will only be able to run 4 colors in HiRes using 640x192 because 
delayed 7MHz in the timing HAL16R8 chip is eliminated.  To preserve delayed 
7MHz would be in $C05A and $C05B.  AN2 signal can be wired to VID7 in the 
timing HAL16R8, but VID7 will never be used from 8th bit per HiRes' byte. 
AN2 is turned on to select black, blue, orange, and white.  AN2 is turned 
off to select black, violet, green, and white.  It is like CGA HiRes with 
two palette of 4 colors.
    DHiRes' data from 560x192 resolution is incompatible to 640x192 
resolution because 8th bit per DHiRes' byte is used.  Special routine will 
convert data without 8th bit to 640x192 resolution with 8th bit.  I wrote my 
own routine for Apple //e's 80 column / 64K RAM / RGB card for conversion 
between 640x192 resolution and 560x192 resolution.
    Please comment what do you think if I can succeed.  I would have to find 
someone who they can assist me to remake custom IC chip for modified IOU.  I 
am going to hear what Michael Mahon what he claims that it will not work. 
It is a fun project to use 640x192 resolution on NTSC monitor.

Bryan Parkoff