
Originally Posted by
skimask
Maybe something like:
LCDOUT $fe , $fe , 0 , "First LCD"
LCDOUT $fe , $fe , 1 , "Second LCD"
...
Sure,
With complete control of the LCDOUT command, you can do pretty much whatever you want.
And, It's not a bad idea.
So, with the existing code from this thread.
Changing the LCDsend routine like this ...
Code:
;----[Send a byte to the Virtual LCD PORT]------------(DO NOT Change)---------
TempChar var byte
Char VAR Byte
LCD_Initialized VAR FLAGS.1
RSS VAR FLAGS.0 ; LCD RS State
HJ_Command VAR BIT
;----[ This routine is called once for every character sent by LCDOUT ]-------
LCDsend:
@ MOVE?AB _TempChar ; Get char sent by LCDOUT, in WREG
if !LCD_Initialized then LCD_Init ; Make sure LCD was Initialized
LCDAfterInit:
IF HJ_Command then LCDEN = TempChar : HJ_Command = 0 : goto LCDsendDone
IF RSS then NO_HJcheck
IF TempChar = $FE then RSS = 1 : HJ_Command = 1 : goto LCDsendDone
NO_HJcheck:
if TempChar = $FE then RSS=0 : goto LCDsendDone ; next char is Command
Char = TempChar
LCDsendCOM:
@ WritePort _Char, LCD_Port_HNIB ; send the High Nibble
LCDsendShortCOM:
@ WritePort _Char, LCD_Port_LNIB ; send the Low Nibble
IF RSS = 0 then ; Is a Command
IF Char = 1 then CommandDelay ; Long delay for Clear Screen
IF Char = 2 then CommandDelay ; Long delay for Home
@ DelayUS _LCD_DATAUS ; Short delay for everything else
goto DelayDone
else
@ DelayUS _LCD_DATAUS ; Short delay for Data
goto DelayDone
endif
CommandDelay:
@ DelayUS _LCD_COMMANDUS
DelayDone:
if LCD_Initialized then RSS = 1 ; Set RS to Data next time
LCDsendDone:
return
Then you can embed the LCD selection inside the LCDOUT statements...
Code:
LCDOUT $FE,$FE,%001, $FE,$80, "Display 1"
LCDOUT $FE,$FE,%010, $FE,$80, "Display 2"
LCDOUT $FE,$FE,%100, $FE,$80, "Display 3"
LCDOUT $FE,$FE,%111, $FE,$C0, "ALL Displays"
And it still works the original way too. (Choices)
Code:
LCDEN = %001
LCDOUT $FE,$80, "Display 1"
LCDEN = %010
LCDOUT $FE,$80, "Display 2"
LCDEN = %100
LCDOUT $FE,$80, "Display 3"
LCDEN = %111
LCDOUT $FE,$C0, "ALL Displays"
Now I really gotta go to bed.
Bookmarks