Jump to content

Recommended Posts

Posted

Hy everybody,

i have some problem to set in the best way my 4 X 20 LCD.

I explain better, since my LCD has some problems in displayng characters in the first row (it seems that something is broken) I would like to use only the second and third row.

I know that is a problem of Offset, and i found out a  trhead ( http://www.midibox.org/forum/index.php?topic=5110.0 ) about this, but i really don't know how to implement what Thorsten suggested to do.

I think that the problem is in my different version of MIDI_box_sid software(my version is MIDIBOX SID_V1_7a).

Thorsten talks about DEFAULT_LCD_SIZE in main.asm.

I think that in my version this variable is called CS_MENU_DISPLAYED_ITEMS. Is it right?

Moreover, i am not able to find any "#if ... #endif soubroutine that controlls the value of this variable.

Am i totally wrong or in my version of software the soubroutine are managed in different way?

Regards

Antonio

Posted

Just to better explain....

What I would like to understand is the way to control the rows of my LCD display. (for exampple avoiding the first row and starting from the second)

Which file I have to modify, which variables...?

Just to remind in this trhead ( http://www.midibox.org/forum/index.php?topic=5110.0 ) there are some explanation but it seems that doesn't much with the file I loaded in my Midibox SID (V_1_7_a).

Regards

Antonio

Posted

Hi,

I really don't know why you guys are trying to use displays which are definitely not properly supported by the application... :-/

George talks about MIDIbox64, and not about MIDIbox SID. In MBSID, the menu interface is implemented on a very different way. There is no simple solution to change the layout for a "more-than-2-line" display. I never considered this, therefore you won't find such a switch in the code.

So far the general statement in order to avoid that anybody else comes to the same idea!

Inofficial statement (maybe I should delete this after one week ;-)): so long you only want to center the screen (menu items displayed in second and third line), following code in USER_Init (-> main.asm) should do the trick:


USER_Init
        movlw  0x40  ; first line -> 2nd line of 4x20 LCD
        movwf  MIOS_PARAMETER1
        movlw  0x14  ; second line -> 3rd line of 4x20 LCD
        movwf  MIOS_PARAMETER2
        movlw  0x00  ; third line not supported by MBSID, mapped to 1st line of 4x20 LCD
        movwf  MIOS_PARAMETER3
        movlw  0x54  ; fourth line not supported by MBSID, mapped to 4th line of 4x20 LCD
        call    MIOS_LCD_YAddressSet
[/code]

CS_MENU_DISPLAYED_ITEMS should be set to 5!

Best Regards, Thorsten.

Posted

If you want to customize the layout, you can do it in cs_menu.inc, most important functions:

CS_MENU_PrintILine

CS_MENU_PrintPLine

Best Regards, Thorsten.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...