Changes
/* Programmable raster interrupt */
A new 8 bit memory mapped register (PRI) has been added within the ASIC at address 6800h, which is cleared at power up. If zero, the normal raster interrupt mechanism functions as before. Otherwise, an interrupt occurs on the leading edge of the HSYNC.. The PRI can be reprogrammed as required to produce multiple interrupts per frame. The raster interrupt occurs immediately on the leading edge of the combined logic of HSYNC active AND raster matched. The raster line is calculated as Vertical Character Count * 8 or Vertical Line Count. If the HSYNC position and duration programmed in the CRTC causes the HSYNC to still be active on the first horizontal character of a new scan line, the interrupt may occur twice for the programmed scan line (once at the start of the line, then again when the HSYNC starts at the end of the same line). See section 2.7 below for general information on interrupts.
Note that the raster interrupt doesn't trigger during Vertical Adjust time (defined by 6845's R5 register) and because of the way it is calculated, if you use set 6845's R9 to less than 7, with some PRI values it will not trigger. The position of the raster interrupt is based on the horizontal sync position (6845's R2) and horizontal sync width (6845's R3). Note that for a given value of R2 (here so that HSYNC is not active on the first horizontal character of a new scan line), values of 6 or greater for the horizontal sync position do not give a change in position, therefore it is triggered on the trailing edge of the HSYNC sent to the monitor and not the trailing edge of the HSYNC from the 6845. e.g. if Horizontal Sync width was set to 14, raster interrupt would trigger on cycle 6 not 14.
===Soft scroll facility===