VinCBR900 wrote:
[...] the fast 5bit opcode output is instead serialized. Here the cpu is not fed a dummy opcode but actually executes the 5bit opcodes. There is an efficiency loss as instead of 8bits per memory byte we now only get 5, but this is enough for a 5x7 font at the least.
Recently Chad posted much the same idea, and I salute you both for thinking of it.
I'm a little too sleepy ATM to fully consider the tradeoffs. One thing, Vince: be sure you do get a clear handle on the difference between a bit-mapped display and one that uses a Character Generator. If the 5 bits extracted from each opcode go directly to the shift reg then it's bitmapped.
But I kinda think if you want a 5x7 font then each character needs
6 pixels worth of width in order to provide a space between adjacent characters. So, would the hardware add that blank extra pixel of space? It's easily doable. Just a little weird, is all. Usually folks opt for bitmapping so they can achieve full freedom to turn on or off any pixel. (Neil mentions this in the preceding post.) But the extra pixel added by hardware would always be blank (off).
Speaking of 65C02 undefined opcodes, there's some startling potential there.
Not that we're obliged to
use that potential, but there's definitely scope for creativity. More on the subject
here.
Quote:
These quirks present remarkable opportunities for a certain segment of the 65xx community. Some of us relish the challenge of expanding the 65C02's instruction set or its 64K address range by means of simple (or perhaps quite ambitious) schemes involving external logic. There needs to be some way for your program to tell the logic when to do something special, and the 65C02's one-cycle NOPs (see columns x3, x7, xB and xF in the table) are an ideal way to encode this special meaning. They're small and fast (1-byte, 1-cycle), have a bit-pattern that (in conjunction with SYNC) makes them easy to detect in the instruction stream, and there are lots of them available (30 on a modern WDC 65C02; 32 or more on other 65C02s). It's very simple to arrange for an action to be triggered by a one-cycle NOP acting on its own. And if you throw in a shift register or some other means of counting cycles, a one-cycle NOP can act as a Prefix Byte that gives additional meaning — such as a momentary bank switch — to the following instruction.
-- Jeff
_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html