Video logic accelerator.

ZXNet echo conference «hardware.zx»

From Ivan Kuvshinov To All 3 June 2005

If we’re going to make an extended screen for the Spectrum, then why not put it in the ROM address space? This same 16 KB of blank screen and even with the release of the address space, which is quite decent! The arguments are as follows - the screen is rarely readable and you can get by without this, there is no need to write to the ROM, so you can separate reading and writing: reading from ROM and writing to screen at the same addresses. The video controller can read directly. There are no problems with compatibility, because the recording does not affect the reading in any way, and I don’t care what The ROM is slipped in, the main thing is that it is a ROM, and there is no need for banks click. > How to add one bit to a byte (draw a line)? For this >should it be read or not? And if necessary, a copy of this >bytes should be done somewhere else in advance? Maybe >make it possible in hardware to write not all bits into a byte for >saving those that do not need to be written (then it will become possible >set to remove one bit without reading)? How then to deal with >compatibility and performance? Think about it, I came to this conclusion - everything will be fine, if in order to put an end to it you don’t need anything read, which means a byte (or several) per point orplace only color attributes there. For 16Kb we have somewhere around 128*128 or 160*102 with 256 colors (just watch the video clips :-)). Or just attributes (byte per byte) for a resolution of 512*240 - we’ll just fit it in (15360). By and large, video memory is required only for records, if we consider it from the point of view of programs. Of course, we are talking only about quantitative assessment, and not about absolute statement, but nevertheless it may turn out to be useful. So an idea was given on how to use the benefits one-way reading, but.. - it does not take into account SPECIAL structure of the screen on the Spectrum, thanks to which, what would you should put a regular point, make a logical operation with a value in video memory, which is inconceivable without reading. However, the principles of working with the screen themselves do not change and if such logical operations could be carried out without reading, then everything would fit very well into the proposed idea. But the solution lies on the surface - after all, logical operations There are very few of them elementary and they are very easily implemented in gland, and the direct meaning of video memory cells programs are not needed, that is, you can make them switchable modes of operation with video memory that will implement logical operations with data copied there. It may significantly increase the speed of working with graphics bySpectrum and makes it possible to apply the main idea stated at the very beginning. Question for experienced programmers: how much faster? (approximately.. so - off the top of my head) would be working with video possessing such regimes? Or is the game not worth the candle? KIA