GRASS VALLEY SWITCHERS |
HERE IS THE CHANNEL INFORMATION USED BY THE assymbly software TRANSMITTER MODULE. BUFFERS4 IS PRE-LOADED WITH THE VIDEO CHANNEL BUFFERS5 IS PRE-LOADED WITH THE AUDIO CHANNEL SERCH001 ;A | movlw D'176' ; 31 0011 0001 0011 0001 | movwf CHANsele ;CHANNEL 1 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,0 ;CHANsele 01 | goto TRXSWITC SERCH002 ;B | movlw D'49' ; 32 0011 0010 | movwf CHANsele ;CHANNEL 2 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,1 ;CHANsele 02 | goto TRXSWITC SERCH003 ; | movlw D'50' ; 33 0011 0011 1011 0011 B3 | movwf CHANsele ;CHANNEL 3 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,2 ;CHANsele 03 | goto TRXSWITC SERCH004 ; | movlw D'179' ;52 34 0011 0100 | movwf CHANsele ;CHANNEL 4 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,3 ;CHANsele 04 | goto TRXSWITC SERCH005 ; | movlw D'52' ;53 35 0011 0101 1011 0101 B5 | movwf CHANsele ;CHANNEL 5 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,4 ;CHANsele 05 | goto TRXSWITC SERCH006 ; | movlw D'181' ;54 36 0011 0110 1011 011A B6 | movwf CHANsele ;CHANNEL 6 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,5 ;CHANsele 06 | goto TRXSWITC SERCH007 ; | movlw D'182' ;55 37 0011 0111 | movwf CHANsele ;CHANNEL 7 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,6 ;CHANsele 07 | goto TRXSWITC SERCH008 ;H | movlw D'55' ;56 38 0011 1000 | movwf CHANsele ;CHANNEL 8 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | clrf STATUSmm ;CHANsele | bsf STATUSmm,7 ;CHANsele 08 | goto TRXSWITC SERCH009 ;I | movlw D'56' ;57 39 0011 1001 1011 1001 B9 | movwf CHANsele ;CHANNEL 9 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | goto TRXSWITC SERCH010 ;J | movlw D'185' ;65 41 0100 0001 1100 0001 C1 | movwf CHANsele ;CHANNEL A 10 PRE-SELECTED | movwf Buffers4 ;VIDEO CH º movwf Buffers5 ;AUDIO CH | goto TRXSWITC goto DONEPACK ; | HERE IS THE ACTUAL CODE FOR THE TRANSMITTER TO THE GRASS VALLEY SWITCHER. 5 CHARACTERS ARE SENT TO CHANGE VIDEO AND AUDIO CHANNEL: CHARACTER 2 START OF PACKET PLACED IN BUFFERS1 CHARACTER 0 ADDRESS PLACED IN BUFFERS2 CHARACTER 0 ADDRESS PLACED IN BUFFERS3 VISCHANNEL (48 TO 57) CHANNEL PLACED IN BUFFERS4 AUDCHANNEL (48 TO 57) CHANNEL PLACED IN BUFFERS5 ;**************************************************************************** ;* *** TRX SEND CHAR MODEM SUB *** * TRXSWITC movlw D'6' ;5 BYTES TO TRX 1S 7DAT 1ODDPAR 1S | movwf NNMbytes ; | movlw D'2' ;2 STX START 2(8BIT)=2 (7BIT ODD) º movwf Buffers1 ; º movlw D'176' ;0 ADDRESS HIGH 0(8BIT0=176(7BITODD) º movwf Buffers2 ; º movlw D'176' ;0 ADDRESS LOW 0(8BIT0=176(7BITODD) º movwf Buffers3 ; º ; movwf Buffers4 ;VIDEO CH º ; movwf Buffers5 ;AUDIO CH | SENDMMED clrf INTCON ; Turn off Interrupts INTE º ;------------------------- bsf STATUS, RP0 ; bank 1 for tris change to ACTIVATE MODE | bcf TRISC & 0x7F, 0 ; Cord KEEP to OUTPUT line (NON FLOAT) | bcf STATUS, RP0 ; bank 0 back to bank 0 | clrf NNPbytes ;number bytes actually transmitted so far º ; buf(d)=pre buf(e)=nomber buf(f)=gr (0)=id (1)= (start packet ... ) movlw Buffer0f ;start c d e f 0 1 movwf FSR ;mov address FSR pointer ¦ ;------------------------- TRXLOADA btfss PIR1,TXIF goto TRXLOADA ;dwell around incf NNPbytes,f ;count bytes in PROGRESS transmitted ¦ incf FSR,f ; ¦ movf INDF,w ;value to TRX (FSR) ¦ movwf TXREG ;load data movf NNMbytes,w ; º subwf NNPbytes,w ;NNPbytes-NNMbytes º btfsc STATUS,C ; º goto OUTSTRXR ;All done transmitting bytes (including EOT) º goto TRXLOADA ;MORE bytes to TRX (normal body no crc) º ;---------------------------------------------------------------------------º OUTSTRXR btfss PIR1,TXIF ;TXINPUT BUFFER = EMPTY = 1 goto $-1 ;dwell around = 0 = FULL = still processing bsf STATUS, RP0 ;bank1 (BANK1.TXSTA.TRMT) º btfss TXSTA,TRMT ;TX SHIFT REG INPUT BUFFER = EMPTY = 1 | goto $-1 ;dwell around | bcf STATUS, RP0 ;bank0 º movlw D'255' ;33 ¦ movwf BitCount ; ¦ decfsz BitCount,f ;Wait for a bit time ¦ goto $ - 1 ; ¦ OUTTXDAT clrf NNMbytes ;clear packets to transmit MEDIA RS232 º clrf Buffer0d clrf Buffer0e clrf Buffer0f clrf Buffers0 clrf NNPbytes ;all done transmit MEDIA RS232 º goto ESSENSES ;EQUATE | goto DONEPACK ;DONEPACK ;***********************MODEMTRX********************************************
CognizantWire Systems