madmax Posted July 12, 2007 Report Share Posted July 12, 2007 Hello!I built a special version of mblc that I call TRBBT (tr means transport). It contains: 14 buttons, 8 LEDs, 1 Jogwheel, LCD display and a full LED display. This is used as remote control during recording sessions, while the user can't stay in front of his DAW.The LCD display is used for displaying time code (SMPTE or BEATS). When I display SMPTE code, I've a problem like this (see also attachement). BEATS mode is ok.SMPTE example:LCD shows: 000.00.21.4LED shows: 000.00.21.24 |---- missed, lost anywhere.I use the following code for displaying the SMTPE code in lc_clcd.inc (lc_v1_6a):;; --------------------------------------------------------------------------;; Page0: ;; --------------------------------------------------------------------------LC_CLCD_Init_Page0 movlw 0x00 + 0 call MIOS_LCD_CursorSet ;; print characters on screen movlw 'T' call MIOS_LCD_PrintChar movlw 'R' call MIOS_LCD_PrintChar movlw 'B' call MIOS_LCD_PrintChar movlw 'B' call MIOS_LCD_PrintChar movlw 'T' call MIOS_LCD_PrintChar movlw ' ' call MIOS_LCD_PrintChar movlw 'm' call MIOS_LCD_PrintChar movlw 'i' call MIOS_LCD_PrintChar movlw 'd' call MIOS_LCD_PrintChar movlw 'i' call MIOS_LCD_PrintChar movlw 'b' call MIOS_LCD_PrintChar movlw 'o' call MIOS_LCD_PrintChar movlw 'x' call MIOS_LCD_PrintChar movlw ' ' call MIOS_LCD_PrintChar movlw 'm' call MIOS_LCD_PrintChar movlw 'b' call MIOS_LCD_PrintChar movlw 'l' call MIOS_LCD_PrintChar movlw 'c' call MIOS_LCD_PrintChar ;; print status digits at position 38/2 SET_CLCD_STATUS 0, 38, 2 ;; print host messages at position 12/0, (0=normal spacing) SET_CLCD_HOST_MSG 0, 12, 0, 0 ;; don't print meters SET_CLCD_METER 0, 0, 0, 0 ;; print rec/solo/mute status at 0/0 SET_CLCD_RSM_MSG 0, 0, 0 ;; print select status at 0/1 SET_CLCD_SEL_MSG 0, 0, 1 ;; print "SMPTE/BEATS" at position: 0/0 SET_CLCD_SMPTE_BEATS 1, 0, 1 ;; print MTC digits at position 6/0 SET_CLCD_MTC 1, 6, 1 returnWhat is wrong? Any idea?Thank you for helping, best regards, M.M. Quote Link to comment Share on other sites More sharing options...
TK. Posted July 12, 2007 Report Share Posted July 12, 2007 Did you change the relative positions in LC_HLP_MTCPositionGet_SMPTE (lc_hlp.inc)?Please compare it with the original code - this function should not be touched to ensure, that all digits are print on screenBest Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
madmax Posted July 14, 2007 Author Report Share Posted July 14, 2007 Did you change the relative positions in LC_HLP_MTCPositionGet_SMPTE (lc_hlp.inc)?I did not touch this file. So I've still no idea.Best regards, M.M. Quote Link to comment Share on other sites More sharing options...
madmax Posted July 16, 2007 Author Report Share Posted July 16, 2007 I found an solution :D, an I did it: I modified lc_hlp.inc ;D! ; old values in italicsLC_HLP_MTCPositionGet IFCLR LC_STAT, LC_STAT_SMPTE, rgoto LC_HLP_MTCPositionGet_BEATSLC_HLP_MTCPositionGet_SMPTE JUMPTABLE_2BYTES 14 ;; mtc digits retlw 12 ; 12 rightmost digit retlw 11 ; 11 retlw 10 ; 0xff this digit will not be print in SMPTE mode retlw 8 ;9 retlw 7 ;8 retlw 5 ;6 retlw 4 ;5 retlw 2 ;3 retlw 1 ;2 retlw 0 ;1 leftmost digit ;; colons retlw 3 ;4 retlw 6 ;7 retlw 9 ;10 ;; space retlw 0 ; to clear unusued positionI think this line was the problem: retlw 0xff; this digit will not be print in SMPTE modeNow LCD, LED Displays and Cubase show the same SMPTE code! But don't ask me why...Regards M.M. Quote Link to comment Share on other sites More sharing options...
TK. Posted July 16, 2007 Report Share Posted July 16, 2007 Fine - this was the only logical explanation for the missing digit.Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.