Concatenating bytes in DAT section
Hi folks!
I have a graphic VFD display that I am writing some custom logos and such for, by declaring the data bytes in the DAT section. The display is 16 pixels tall so it takes two bytes for each column to be displayed. Here is how I am doing it:
(this code works just fine)
What I would like to do, in order to help visualize what the output will look like (without the intervening parenthesis, comma, and %) is to declare those bytes as 16-bit words but read them as 8-bit bytes like this:
(this code does not work)
I want to do this so I can tilt my head and get a good idea of what the display will look like. The byte seperators make it harder to visualize what is happening and I would like to get rid of them if possible.
The code works, so this isn't urgent at all, just curious. I tried several ways to get this to work but no love as of yet.
Am I missing something?
I have a graphic VFD display that I am writing some custom logos and such for, by declaring the data bytes in the DAT section. The display is 16 pixels tall so it takes two bytes for each column to be displayed. Here is how I am doing it:
(this code works just fine)
logodatastart byte(%11111111), (%11111111) ' display data
byte(%10000100), (%00100001) ' display data
byte(%10000100), (%00100001) ' display data
byte(%10000100), (%00100001) ' display data
byte(%10000100), (%00100001) ' display data
byte(%10000000), (%00100001) ' display data
byte(%10000000), (%00100001) ' display data
byte(%10000000), (%00100001) ' display data
What I would like to do, in order to help visualize what the output will look like (without the intervening parenthesis, comma, and %) is to declare those bytes as 16-bit words but read them as 8-bit bytes like this:
(this code does not work)
logodatastart byte(%1111111111111111) ' display data
byte(%1000010000100001) ' display data
byte(%1000010000100001) ' display data
byte(%1000010000100001) ' display data
byte(%1000010000100001) ' display data
byte(%1000000000100001) ' display data
byte(%1000000000100001) ' display data
byte(%1000000000100001) ' display data
I want to do this so I can tilt my head and get a good idea of what the display will look like. The byte seperators make it harder to visualize what is happening and I would like to get rid of them if possible.
The code works, so this isn't urgent at all, just curious. I tried several ways to get this to work but no love as of yet.
Am I missing something?

Comments
logodatastart byte word %1111111111111111 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000000000100001 ' display data word %1000000000100001 ' display data word %1000000000100001 ' display dataHowever, the right and left bytes will be swapped with respect to the way they're displayed in a word. If need be, you could swap the bytes at the beginning of your program.Thanks again :-)
This expression will not compile:
repeat temp from 32 to 0 ' logo is 33 columns wide temp is an offset pointer into the array VFD.tx(logodatastart[temp].byte[1]) ' display data VFD.tx(logodatastart[temp].byte[0]) ' display dataThe array is declared like this(for 33 lines):
logodatastart word %1111111111111111 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000010000100001 ' display data word %1000000000100001 ' display data word %1000000000100001 ' display data word %1000000000100001 ' display data etc etc etcAnybody have any pointers how I might integrate the address offset and the byte modifier? I've fiddled around with it for a bit and am stuck.
Worked like a charm, just as you posted it. Thank you huge!
-bryan