PDA

Ver la versión completa : Spanish Cube 1.0 (Programable)



LUK
22-12-2001, 00:30
Aki os dejo un manual bastante complero sobre el SpanishCube 1.0:

www.hackhispano.com/archivos/TVCABLE/Cube_v 1.0.pdf



Si el HEX ke hay en el manual no os funciona, bajad este:
www.hackhispano.com/archivos/TVCABLE/Spanishcube.hex


Un saludo

chicharrilla
23-12-2001, 02:25
Para que sirve la spanishcube? funciona con supercable ( operador de cable de andalucia) y si no sabeis si funciona hay alguna forma de comprobar que funciona.

Angeliyo
23-12-2001, 07:46
El cubo sirve para estabilizar la imagen. Es decir... tu puedes sintonizar los canales con tu televisión todos pero no se ven o se ven con muchas rallas este aparato trata de eliminar esas rayas. (Explicación simple)
Montado un 1.1 funciona perfectamente y este no creo que vaya a ser menos... :P
Saludos

Angeliyo
23-12-2001, 18:09
Je je me he equivocado en el post anterior.
El cubo sirve para mandar una señal de test al deco que te deja ver todos los canales PERO sería posible que te detectasen pidiendo la cabecera de los canales y viendo que esta en modo test y que no debería estar.
En el post anterior yo hablaba del maxi que no hace falta deco pero tiene el inconveniente qeu hay que reconfigurarlo cada vez que cambiamos de canal (que es el que yo he probado)

chumie
23-12-2001, 23:29
yo he hecho ya tres spanish cube y van al pelo.

chicharrilla
24-12-2001, 13:09
Pues muchas gracias, lo probare. Pero lo que comentas de que te podrian detectar desde la cabecera que quiere decir?. Es posible que se presente en mi casa unj personajillo de la operadora de cable?

Angeliyo
24-12-2001, 15:32
con un cube tecnicamente te pueden detectar y pueden saber con solo mandar una orden a tu deco que estas viendo todos los canales. Legalmente no se puede querría decir que te han estado espiando y todo eso...

chicharrilla
24-12-2001, 16:55
de nuevo muchas gracias por vuestra informacion. Hay alguna forma de evitar que t espien?.

OptimusPrime
24-12-2001, 17:21
Mola lo intentare hacer!

Pd: Angeliyo ya tengo el megaprog necesito ayuda con el cardmaster k no me rula recomendaciones de modo de empleo?

muchas thx

LUK
12-01-2002, 17:07
Ahora os busco las fotos ke no se ven.

LUK
12-01-2002, 17:17
Para los ke tengan tv con ONO, ke se vean esta page http://www.geocities.com/onogratis/

Ritch
16-01-2002, 21:39
:) :) :) ;) :p :confused: :confused: Y LAS FOTOS? : )

CHOIS2002
03-02-2002, 20:09
Este es el ASM del cube comentado(en ingles),no he tenido tiempo de traducirlo.


; -->The Master 2000 (c) ESNV1.2a..Dynamic Serial Number finder cube.
; -->Basic code by Magicboxes.
; -->Modified by The Master.
; -->Further mods by CRowmAN.
; -->Non destructive multimode cable decoder activator.
; -->For Jerrol(GI) baseband decoders.
; -->Parallax code -- Use spasm to assemble.


DEVICE PIC16F84,XT_OSC,WDT_OFF,PROTECT_OFF
ORG 0
JMP START
ORG 2

SFORWARD EQU PORTB.6 ;(Forwards button)(pin 12)
SENTER EQU PORTB.7 ;(Enter button)(pin 13)
SBACK EQU PORTB.0 ;(Back button)(pin 6)
SSNENTRY EQU PORTA.1 ;(Serial entry button)(pin 18)
PLLCLK EQU PORTB.1 ;(phase lock loop clock line)
PLLENB EQU PORTB.2 ;(phase lock loop enable line)
PLLDIN EQU PORTB.3 ;(phase lock loop data in)
FILTER EQU PORTB.5 ;(Turns filter high/on low/off)
DATAOUT EQU PORTA.0 ;(FSK data output)
LED EQU PORTA.2 ;(Function led)

;================================================= =========================
; Registers Allocation
org 0Ch


XMT_BYTE ds 1 ;0Ch
BIT_CNTR ds 1 ;0Dh
SECONDS ds 1 ;0Fh
MINUTES ds 1 ;10h
MINUTES2 ds 1 ;11h
TEMP1 ds 1 ;12h temp variables
TEMP2 ds 1 ;13h
TEMP3 ds 1 ;14h
TEMP4 ds 1 ;15h
TEMP5 ds 1 ;16h
TEMP6 ds 1 ;17h
TEMP7 ds 1 ;18h
BYTE ds 1 ;19h
BYTEDEL ds 1 ;1Ah
PARITY ds 1 ;1Bh
PREDEL ds 1 ;1Dh
VAR1 ds 1 ;1Fh
VAR2 ds 1 ;20h
VAR3 ds 1 ;21h
COUNT191 ds 1 ;23h 2nd esn byte
COUNT127 ds 1 ;24h 3rd esn byte
COUNT63 ds 1 ;25h 4th esn byte
EBYTE ds 1 ;26h 1st esn byte
ONOFF ds 1 ;27h
BYTE1 ds 1 ;2Bh
BYTE2 ds 1 ;2Ch
BYTE3 ds 1 ;2Dh
BITCOUNT ds 1 ;2Eh
DELBYTE ds 1 ;2Fh
SYNCCOUNT ds 1 ;30h
CHECKSUM ds 1 ;32h
SERIALBYTES ds 1 ;33h

org 6

START
CLRF PORTA
CLRF PORTB
MOVLW 11111010b
TRIS PORTA
MOVLW 11000001b
TRIS PORTB ; setup ports
MOVLW 00000111b
OPTION ; option register selected
BSF PLLENB ; enable the pll chip
BSF FILTER ; stop incoming data

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;
;phase lock loop setup ;
;c register set to 0x40 ;
;c0-0-fre off ;
;c1-0-fve off ;
;c2,c3,c4-0,0,0 REF output to DC ;
;c5-0-LDE off ;
;c6-1-set PDout as phase detect mech ;
;c7-0-no inversion of PDout ;
;R register set to 0x0050 100Khz resolution ;
;N register set to 0x04cb 1227*100KHz=122.7MHz ;
;N register set to 0x0424 1060*100KHz=106MHz etc ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;


MOVLW 040H
MOVWF BYTE1
MOVLW 008H ; 8 bits to send
MOVWF BITCOUNT
CALL SENDPLL ; sends 01000000b

;************************************************* ******
; alter the following 2 parameters for correct frequency
;************************************************* ******

MOVLW 004H ; Alter this parameter
MOVWF BYTE1
MOVLW 0CBH ; Alter this parameter
MOVWF BYTE2
MOVLW 010H ; 16 bits to send
MOVWF BITCOUNT
CALL SENDPLL ; sends 0000010011001011b
MOVLW 000H ; move 00h into BYTE1
MOVWF BYTE1
MOVLW 000H ; move 00h into BYTE2
MOVWF BYTE2
MOVLW 050H ; move 050h into BYTE3
MOVWF BYTE3
MOVLW 018H ; 24 bits to send
MOVWF BITCOUNT
CALL SENDPLL ; sends 000000000000000001010000b

;**************************
; PLL is now up and running
;**************************

MOVLW 2
MOVWF BIT_CNTR
CALL REPLAYBITS ; flash the led

;*****************************
; Now send all Global commands
;*****************************

RESTART
BSF LED ; turn on led
MOVLW 09EH
MOVWF VAR1 ; VAR1 is used here as the
; CID Channel ID (ranges from 00h to 9Eh)
NEXTCHAN
MOVLW 07FH ; FD 7F turn on channel (global) No ESN required --
; Works on all DPBB7xxx but not on CFT series
MOVWF VAR2
CALL TURNONCHAN
MOVLW 081H ; FD 81 turn on channel (global) No ESN required --
; Works on all DPBB7xxx but not on CFT series
MOVWF VAR2
CALL TURNONCHAN
DECFSZ VAR1,F
GOTO NEXTCHAN

MOVLW 0F9H
CALL COMM6A ; sends reset disconnect ( 06 F9 E0 LA LA LA CS )
CALL COMM3 ; sends reset global timer command

;*************************************
; End of Global, Now check the buttons
;*************************************

MOVLW 0C8H
MOVWF VAR2 ; used for time delay
MOVLW 0E0H
MOVWF EBYTE ; move E0 into first ESN byte
BUTTONS
MOVLW 0FFH
MOVWF VAR1
CHKBUTTONS
BCF LED ; turn off the led
BTFSS SSNENTRY ; is the s/n button pressed?
GOTO NEWSERIAL ; yes
BTFSS SFORWARD ; no, is the fwd button pressed?
GOTO TURNITOFF ; yes
BTFSS SENTER ; no, is the enter button pressed?
GOTO RDESN ; yes
BTFSS SBACK ; no, is the back button pressed?
GOTO STARTOVER ; yes
CALL SYNCBYTES ; no, so decrement delay and retest.
DECFSZ VAR1,F
GOTO CHKBUTTONS
DECFSZ VAR2,F
GOTO BUTTONS
GOTO RESTART ; delay used to re-output global commands.

STARTOVER
BSF LED ; turn on led
CLRF COUNT191 ; get ready for next output
CLRF COUNT127
CLRF COUNT63
MOVLW 0F9H
MOVWF ONOFF

;************************************************* **************************
;Make255on sends incremental compressed reset disconnect (turn on) commands.
;************************************************* **************************

MAKE255on
CALL COMM6 ; sends reset disconnect ( 06 F9 E0 LA LA LA CS etc)
INCF COUNT127,F
BTFSS COUNT127,06H ; bit set (C0)?
GOTO MAKE255on ; no so loop
CLRF COUNT127 ; yes so clear count127
INCF COUNT191,F ; increment count 191
BTFSS COUNT191,06H ; bit set (C0)?
GOTO MAKE255on ; no so loop
CLRF COUNT127
CLRF COUNT191
INCF EBYTE,F ; increase first ESN byte
GOTO STARTOVER ; loop

TURNITOFF
BSF LED ; turn on led
CLRF COUNT191 ; setup next output
CLRF COUNT127
CLRF COUNT63
MOVLW 0F8H
MOVWF ONOFF

;************************************************* *********
; Make 255off sends incremental compressed shutoff commands
;************************************************* *********

MAKE255off
CALL COMM6 ; sends shutdownbox (06 F8 E0 LA LA LA CS).
BTFSS SENTER ; check for the enter button.
GOTO GOBACK ; yes so goto next routine.

INCF COUNT127,F ; no, so increment third byte.
BTFSS COUNT127,06H ; is bit 6 set ?
GOTO MAKE255off ; no so loop.

CLRF COUNT127
INCF COUNT191,F ; increment second byte.
BTFSS COUNT191,06H ; bit 6 set ?
GOTO MAKE255off ; no so loop.

CLRF COUNT127
CLRF COUNT191
INCF EBYTE,F ; increment first byte.
GOTO TURNITOFF ; loop.

GOBACK
CALL FORWARDS ; needed ?

;************************************************* ****
; Goback2 sends decremental single ESN turn on command
;************************************************* ****

GOBACK2

MOVLW 0F9H
MOVWF ONOFF
CALL COMM6LOTS ; sends reset disconnect (06 F9 E0 LA LA LA CS)
CALL COMM6LOTS
MOVF COUNT63,W
BTFSC Z
GOTO EROTEST1
DECF COUNT63,F
GOTO ACKWARDS1

EROTEST1
MOVF COUNT127,W
BTFSC Z
GOTO EROTEST
MOVLW 03FH
MOVWF COUNT63
DECF COUNT127,F
GOTO ACKWARDS1

EROTEST
MOVF COUNT191,W
BTFSC Z
GOTO ACKWARDS0
MOVLW 03FH
MOVWF COUNT63
MOVWF COUNT127
DECF COUNT191,F
GOTO ACKWARDS1
ACKWARDS0
MOVLW 03FH
MOVWF COUNT63
MOVWF COUNT127
MOVWF COUNT191
DECF EBYTE,F
ACKWARDS1
BTFSS SBACK ; check for back button
GOTO THEMAIN1 ; yes so go to next routine
GOTO GOBACK2 ; no so loop

;*******************************************
; Themain sends a few turn on/off commands
;*******************************************

THEMAIN1 movlw 8
movwf var3
call forwards
THEMAIN movlw 1
xorwf ONOFF ; swap on/off
CALL COMM6LOTS
CALL COMM6LOTS
CALL COMM6LOTS
BTFSS SENTER ; check enter button
GOTO ALLON
CALL COMM6LOTS
CALL COMM6LOTS
CALL COMM6LOTS
BTFSS SENTER
GOTO ALLON
decfsz var3,1
GOTO THEMAIN
GOTO THEMAIN1

;************************************************* *****************
;Forwards sends incremental single shutdownbox 06 F8 E0 LA LA LA CS
;************************************************* *****************

FORWARDS
MOVLW 0F8H
MOVWF ONOFF
CALL COMM6A
INCF COUNT63,F
BTFSS COUNT63,06H
GOTO FORWARDS1
CLRF COUNT63
INCF COUNT127,F
BTFSS COUNT127,06H
GOTO FORWARDS1
CLRF COUNT127
INCF COUNT191,F
BTFSS COUNT191,06H
GOTO FORWARDS1
CLRF COUNT63
CLRF COUNT127
CLRF COUNT191
INCF EBYTE,F
FORWARDS1
RETURN

;************************************************* ***********************
;Backwards sends decremental single reset disconnect 06 F9 E0 LA LA LA CS
;************************************************* ***********************

BACKWARDS
MOVLW 0F9H
MOVWF ONOFF
CALL COMM6A
MOVF COUNT63,W
BTFSC Z
GOTO ZEROTEST1
DECF COUNT63,F
GOTO BACKWARDS1

ZEROTEST1
MOVF COUNT127,W
BTFSC Z
GOTO ZEROTEST
MOVLW 03FH
MOVWF COUNT63
DECF COUNT127,F
GOTO BACKWARDS1

ZEROTEST
MOVF COUNT191,W
BTFSC Z
GOTO BACKWARDS0
MOVLW 03FH
MOVWF COUNT63
MOVWF COUNT127
DECF COUNT191,F
GOTO BACKWARDS1

BACKWARDS0
MOVLW 03FH
MOVWF COUNT63
MOVWF COUNT127
MOVWF COUNT191
DECF EBYTE,F
BACKWARDS1
RETURN

ALLON

;**********************************************
;writes the 4 stored bytes of the ESN to eeprom
;**********************************************

MOVLW 000H
MOVWF EEADR ; address to store first byte
MOVF EBYTE,W
MOVWF EEDATA ; first byte
CALL EEWRITE ; write it

MOVLW 001H
MOVWF EEADR ; next address
MOVF COUNT63,W
MOVWF EEDATA ; second byte
CALL EEWRITE ; write it

MOVLW 002H
MOVWF EEADR ; next address
MOVF COUNT127,W
MOVWF EEDATA ; third byte
CALL EEWRITE ; write it

MOVLW 003H
MOVWF EEADR ; next address
MOVF COUNT191,W
MOVWF EEDATA ; fourth byte
CALL EEWRITE ; write it

RDESN
;*******************************************
;reads back the 4 stored bytes of the eeprom
;*******************************************

CLRF EBYTE
CLRF COUNT191
CLRF COUNT127
CLRF COUNT63

MOVLW 000H
MOVWF EEADR ; address of byte to read
CALL EEREAD
MOVF EEDATA,W
MOVWF EBYTE ; move into EBYTE

MOVLW 001H
MOVWF EEADR ; next address
CALL EEREAD
MOVF EEDATA,W
MOVWF COUNT63 ; move into count63

MOVLW 002H
MOVWF EEADR ; next address
CALL EEREAD
MOVF EEDATA,W
MOVWF COUNT127 ; move into count127

MOVLW 003H
MOVWF EEADR ; next address
CALL EEREAD
MOVF EEDATA,W
MOVWF COUNT191 ; move into count191
goto manual ; start in man mode


ALLON2
;******************
;Full block routine
;******************

BSF LED ; turn on led
BSF FILTER ; turn on filter
call senddata ; delay for startup
MOVLW 0F9H
MOVWF ONOFF
CALL COMM6A ; reset disconnect
MOVLW 047H
MOVWF VAR2
MOVLW 0FFH
MOVWF VAR3
CALL COMM8 ; all functions on
MOVLW 0B0H
MOVWF VAR1
CALL ALL3LOOPS
CALL COMM3 ; reset global timer
CALL SENDDATA ; delay
BCF LED ; led off
CLRF SECONDS
CLRF MINUTES
CLRF MINUTES2


MULTITEST
DECFSZ SECONDS,F
GOTO MULTITEST
BTFSS SFORWARD ; check fwd button
GOTO ALLON3
BTFSS SENTER ; check enter button
GOTO PPVOFF
CALL SENDDATA
DECFSZ MINUTES,F
GOTO MULTITEST
BTFSS SFORWARD ; check fwd button
GOTO ALLON3
BTFSS SENTER ; check enter button
GOTO PPVOFF
DECFSZ MINUTES2,F
GOTO MULTITEST
BTFSS SFORWARD
GOTO ALLON3
BTFSS SENTER
GOTO PPVOFF
GOTO ALLON2

ALLON3
BSF LED ; turn on led
BSF FILTER ; turn on filter
CALL SENDDATA ; delay for startup
MOVLW 0F9H
MOVWF ONOFF
CALL COMM6A
MOVLW 0B0H
MOVWF VAR1
MOVLW 0FFH
MOVWF VAR3

CALL ALL3LOOPS

CALL COMM3
BCF FILTER
BCF LED
CLRF SECONDS
CLRF MINUTES
MOVLW 05AH
MOVWF MINUTES2
TIME1
DECFSZ SECONDS,F
GOTO TIME1
BTFSS SBACK
GOTO ALLON2
BTFSS SENTER
GOTO PPVOFF
DECFSZ MINUTES,F
GOTO TIME1
BTFSS SBACK
GOTO ALLON2
BTFSS SENTER
GOTO PPVOFF
DECFSZ MINUTES2,F
GOTO TIME1
BTFSS SBACK
GOTO ALLON2
BTFSS SENTER
GOTO PPVOFF
GOTO ALLON3

PPVOFF
BSF FILTER ; turn on the filter
BSF LED
call senddata
call senddata
call senddata
call senddata ; delay
btfsc senter ; is enter still pressed ?
goto manual ; no so go to manual mode
MOVLW 0B0H ; yes so turn off ppv
MOVWF VAR1
MOVLW 000H
MOVWF VAR3

CALL ALL3LOOPS ; output turn off
BCF FILTER ; turn off the filter
MULTIMODE BCF LED
CALL SENDDATA
BTFSS SENTER
GOTO ALLON2
BSF LED
CALL SENDDATA
GOTO MULTIMODE

manual
MOVLW 0F9H
MOVWF ONOFF
CALL COMM6A
MOVLW 047H
MOVWF VAR2
MOVLW 0FFH
MOVWF VAR3
CALL COMM8
MOVLW 0B0H
MOVWF VAR1
CALL ALL3LOOPS
CALL COMM3
CALL SENDDATA
BCF LED
BCF FILTER
manual2
btfss senter
goto ppvoff
btfss sback
goto allon2
btfss sforward
goto allon3
goto manual2

NEWSERIAL
MOVLW 005H ; move 5 into working register
; we will be saving 5 bytes for the serial number
MOVWF SERIALBYTES ; move working register into serialbytes
MOVLW 003H ; move 3 into working register
MOVWF EEADR ; move working register into EEPROM address register

NEXTBYTE
clrw ; clears working register
CLRF XMT_BYTE ; clears xmit byte
CLRF BIT_CNTR ; clears bit counter
INCF EEADR,F ; increments EEPROM storage address

ADDSNHIBIT ; HIGH BITS OF THE BYTE

MOVLW 010H ; move 16 (10h) into working register
ADDWF XMT_BYTE,F ; add xmit byte and 16 (10h), store in xmt_byte
INCF BIT_CNTR,F ; increment bit counter by 1
BSF LED ; Turn led on
MOVLW 004H ; move 4 into working register
MOVWF TEMP6 ; move working register into TEMP6

WAIT1STHIBIT ; used to wait for the 1st high bit
CALL PREAMBLE ;
BTFSS SSNENTRY ; if button is NOT pressed skip next instruction
GOTO WAIT1STHIBIT ; if ssnentry is still pressed go to wait1sthighbit
BCF LED ; Turn led off
WAIT4NEXTHIBIT
CALL PREAMBLE
BTFSS SSNENTRY ; if button is NOT pressed skip next instruction
GOTO ADDSNHIBIT ; increase the HIGH bits
CALL SENDDATA
DECFSZ TEMP6,F ; if TEMP6 = 0 there isnt any more high bits
; we can replay them then
GOTO WAIT4NEXTHIBIT

CALL REPLAYBITS

MOVF XMT_BYTE,W
MOVWF EEDATA
CLRF XMT_BYTE

WAIT4LOBITS ; used to wait for the 1st low bit
CALL PREAMBLE
BTFSS SSNENTRY ; if button is NOT pressed skip next instruction
GOTO ADDBIT ; we have the 1st low bit
GOTO WAIT4LOBITS

ADDSNLOBIT ; this is the LOW bits
MOVLW 004H
MOVWF TEMP6
BITTIMER
CALL PREAMBLE ; if button is NOT pressed skip next instruction
BTFSS SSNENTRY
GOTO ADDBIT
CALL SENDDATA
DECFSZ TEMP6,F
GOTO BITTIMER
MOVLW 011H
SUBWF XMT_BYTE,F
INCFSZ XMT_BYTE,F
GOTO REPLAYLOBITS
GOTO TOOMANYBITS

REPLAYLOBITS
CALL REPLAYBITS

CALL EEWRITE ; now write the byte
DECFSZ SERIALBYTES,F ; if serialbytes = 0 then we have all the bytes
; we can now read them back from EEPROM
GOTO WAIT4NEXTBYTE

;*************************************
;Load Address (ESN) from Serial Number
;*************************************

MOVLW 004H ; move 4 into EEADR
MOVWF EEADR
CALL EEREAD ; read byte at location 4
MOVF EEDATA,W ; 1st byte of SN is now in EEDATA
MOVWF TEMP1 ; store 1st byte in TEMP1

MOVLW 005H ; move 5 into EEADR
MOVWF EEADR
CALL EEREAD ; read byte at location 5
MOVF EEDATA,W ; 2nd byte of SN is now in EEDATA
MOVWF TEMP7 ; store 2nd byte in TEMP7

MOVLW 006H ; move 6 into EEADR
MOVWF EEADR
CALL EEREAD ; read byte at location 6
MOVF EEDATA,W ; 3rd byte of SN is now in EEDATA
MOVWF TEMP3 ; store 3rd byte in TEMP3

MOVLW 007H ; move 7 into EEADR
MOVWF EEADR
CALL EEREAD ; read byte at location 7
MOVF EEDATA,W ; 4th byte of SN is now in EEDATA
MOVWF TEMP4 ; store 4th byte in TEMP4

MOVLW 008H ; move 8 into EEADR
MOVWF EEADR
CALL EEREAD ; read byte at location 8
MOVF EEDATA,W ; 5th byte of SN is now in EEDATA
MOVWF TEMP5 ; store 5th byte in TEMP5


BSF LED ; turn on led
CALL SENDDATA
CALL SENDDATA
CALL SENDDATA
CALL SYNCBYTES ; delay
CALL LOADSN ; set esn for serial
CALL SYNCBYTES
CALL COMMFD8C ; set checksum
MOVLW 0FEH
MOVWF ONOFF
MOVLW 03FH
MOVWF COUNT191
MOVWF COUNT127
MOVLW 03EH
MOVWF COUNT63
MOVLW 08DH
MOVWF VAR2
MOVLW 0FFH
MOVWF VAR3
CALL COMM6A ; sends enable box to be rebooted(06 FE E0 BF 7F 3E CS)
CALL COMM11X ; sends reboot box(07 FD 8D E0 BF 7F 3E CS)
CALL EXTRA
MOVLW 049H
MOVWF VAR2
CALL COMM8
MOVLW 04BH
MOVWF VAR2
CALL COMM8
MOVLW 048H
MOVWF VAR2
CALL COMM8
CALL SYNCBYTES
CALL CHANNELMAP
MOVLW 095H
MOVWF VAR2
MOVLW 0F6H
MOVWF VAR3
CALL COMM8 ; set output channel
MOVLW 0F9H
MOVWF ONOFF
CALL SYNCBYTES
CALL COMM6A ; sends TURN ON BOX (06 F9 E0 BF 7F 3E CS)
MOVLW 08EH
MOVWF VAR2
CALL COMM11X ; reset timer
MOVLW 047H
MOVWF VAR2
MOVLW 0FFH
MOVWF VAR3
CALL COMM8 ; sends remote on etc (08 FD 47 E0 BF 7F 3E FF CS)
MOVLW 050H
MOVWF VAR2
MOVLW 00H
MOVWF VAR3
CALL COMM8 ; tuning type (STANDARD)
MOVLW 232
MOVWF VAR1
master
movf var1,0
movwf var2
CALL SYNCBYTES
call extra2
incf var1,1
movf var1,0
movwf var2
movlw 248
subwf var1,0
btfss z
goto master

KEEPBOXUP

MOVLW 176
MOVWF VAR1
MOVLW 255 ; all channels authorized!
MOVWF VAR3
LOOP2
MOVF VAR1,0
MOVWF VAR2
CALL COMM8
movlw 56
addwf VAR2,1
CALL COMM8
INCF VAR1,1
MOVF VAR1,0
MOVWF VAR2
MOVLW 192
SUBWF VAR1,0
BTFSS Z
GOTO LOOP2
BCF LED
GOTO BUTTONS


ADDBIT
BSF LED ; turn on led
INCF EEDATA,F ; increment data
INCF XMT_BYTE,F
INCF BIT_CNTR,F
DEBOUNCE3
CALL PREAMBLE
BTFSS SSNENTRY
GOTO DEBOUNCE3
BCF LED
GOTO ADDSNLOBIT

WAIT4NEXTBYTE
CALL PREAMBLE
BTFSS SSNENTRY
GOTO NEXTBYTE
GOTO WAIT4NEXTBYTE

TOOMANYBITS
MOVLW 010H
SUBWF EEDATA,F ; MAYBE WE SHOULD SUB 16 FROM bit_cntr TOO !!!!
GOTO REPLAYLOBITS ; to stop excessive led flashes

REPLAYBITS
BSF led ; Turn led on
CALL SENDDATA
BCF led ; Turn led off
CALL SENDDATA
DECFSZ bit_cntr,1
GOTO replaybits
RETURN


;***************************************
;load address from serial number command
;***************************************

LOADSN
CLRF checksum
MOVLW 0Ch ; load address from serial number command
; sends 0C FD 5F E0 BF 7F 3E SN SN SN SN SN CS
; ive removed part of the CS calculation and
; replaced it with a pre-calculated figure 0C4h
CALL SENDBYTE
MOVLW 0FDh
CALL SENDBYTE
MOVLW 05Fh
CALL SENDBYTE
MOVLW 0E0h
CALL SENDBYTE
MOVLW 0BFh
CALL SENDBYTE
MOVLW 07Fh
CALL SENDBYTE
MOVLW 03Eh
CALL SENDBYTE ; to here checksum = 0C4h

MOVLW 0C4h
ADDWF checksum,1

MOVF TEMP1,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF TEMP7,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF TEMP3,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF TEMP4,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF TEMP5,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 000H


; ************************************************** *****
; ************* COMMAND 3 * reset global timer **********
; ************************************************** *****

COMM3
; sends 03 FD 6E CS
; ive already worked out the CS as 092h so
CALL SYNCBYTES ; ive been able to remove the checksum calculations
MOVLW 03h ; move 03h into work register
CALL SENDBYTE ; sends 03h
MOVLW 0FDh ; move FDh into work register
CALL SENDBYTE ; sends FDh
MOVLW 06Eh ; move 6Eh into work register
CALL SENDBYTE ; sends6ECh
MOVLW 092h ; checksum = ((03+FD+6E) XOR FF)+1 == 092h
CALL SENDBYTE ; sends 092h as the checksum
RETLW 0


; ************************************************** *****
; ************* COMMAND 6 *******************************
; ** compressed turn on/off command *********************

COMM6
CALL SYNCBYTES
CLRF CHECKSUM
CLRF SECONDS
CALL SYNCBYTES
MOVLW 045H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF ONOFF,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF EBYTE,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT191,W
IORLW 080H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT127,W
IORLW 040H
ADDWF CHECKSUM,1
CALL SENDBYTE
ADDRESS1
MOVF SECONDS,W
ADDWF CHECKSUM,1
CALL SENDBYTE
INCF SECONDS,F
BTFSS SECONDS,06H
GOTO ADDRESS1
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 000H


; ************************************************** *****
; ************* COMMAND 6A *******************************
; *****single ESN turn on/off command*********************

COMM6A
CALL SYNCBYTES
CLRF CHECKSUM
CLRF SECONDS
MOVLW 006H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF ONOFF,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF EBYTE,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT191,W
IORLW 080H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT127,W
IORLW 040H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT63,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 000H

;****************************
;remote control functions etc
;****************************

COMM8
CALL SYNCBYTES
CLRF CHECKSUM
MOVLW 008H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FDH
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF VAR2,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF EBYTE,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT191,W
IORLW 080H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT127,W
IORLW 040H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF COUNT63,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF VAR3,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 000H

;*************************************
;sets up the pll for the correct speed
;*************************************

SENDPLL
BCF PLLENB ; clear the pll enable
BITSTR
RLF BYTE3,1 ; rotate the bits of BYTE3 left
RLF BYTE2,1 ; rotate the bits of BYTE2 left
RLF BYTE1,1 ; rotate the bits of BYTE1 left
BCF PLLCLK ;
BCF PLLCLK
BTFSC STATUS,0 ; if STATUS is clear skip next instruction
BSF PLLDIN ; send 1 to pll chip
BTFSS STATUS,0 ; if STATUS is set skip next instruction
BCF PLLDIN ; send 0 to pll chip
NOP
BSF PLLCLK ; set pll clock
DECFSZ BITCOUNT,1 ; decrement the bitcounter skip next instruction if zero
GOTO BITSTR ; theres more bits to send
BSF PLLENB ; enable the pll chip
RETLW 0


;***************
;write to EEPROM
;***************

EEWRITE
BSF RP0
BCF GIE
BSF WREN

;; the ‘magic sequence’ must be executed exactly as shown with
;; interrupts disabled to prevent other instructions from
;; sneaking in.

MOVLW 055h ; Magic write sequence
MOVWF EECON2 ; Magic write sequence
MOVLW 0AAh ; Magic write sequence
MOVWF EECON2 ; Magic write sequence
BSF WR ; Magic write sequence
BTFSC WR
GOTO $-1

BCF WREN
BSF GIE
BCF RP0
RETURN


;****************
;read from EEPROM
;****************

EEREAD
BSF RP0 ; selects upper memory page
BSF RD ; causes an EEPROM read
BTFSC RD
GOTO $-1
BCF RP0 ; go back to lower memory page
RETURN



COMM6LOTS
CALL COMM6A
CALL PREAMBLE
CALL COMM6A
CALL PREAMBLE
CALL COMM6A
CALL PREAMBLE
CALL COMM6A
CALL PREAMBLE
CALL COMM6A
CALL PREAMBLE
CALL COMM6A
CALL PREAMBLE
RETURN


; ************* PREAMBLE *******************
; **** DOES PRE-AMBLE FOR ALL CODES ********
; ******************************************

PREAMBLE
MOVLW 007H
MOVWF BYTEDEL
MOVLW 009H
MOVWF TEMP2
PREAM1
MOVLW 0FFH
MOVWF BYTE
CALL SENDBYTE
DECFSZ TEMP2,F
GOTO PREAM1
MOVF PREDEL,W
MOVWF BYTEDEL
MOVLW 0FFH
MOVWF BYTE
CALL SENDBYTE
RETLW 000H


; ******************** SEND BYTE **********************
; ******* BYTEDEL = BYTE DELAY ************************
; ******* BYTE = BYTE TO BE TRANSMITTED ************
; ******* XYMODN = THE SECURITY CHECKSUM *************
; ******* PARITY = THE PARITY OF THE BYTE ************
; ************************************************** ***


SENDBYTE
MOVWF BYTE1
MOVWF BYTE2
MOVLW 008H
MOVWF BITCOUNT
MOVLW 001H
MOVWF PARITY
datalp
RRF BYTE2,F
BTFSC STATUS,00H
XORWF PARITY,F
DECFSZ BITCOUNT,F
GOTO datalp
BCF STATUS,000H
RLF BYTE1,F
RLF PARITY,F
BSF PARITY,002H
MOVLW 00BH
MOVWF BITCOUNT
NOP
NOP
NOP
NOP
NOP
NOP
bitseq
RRF PARITY,F
RRF BYTE1,F
BTFSC STATUS,00H
GOTO sendone
NOP
BSF DATAOUT
MOVLW 016H
MOVWF DELBYTE
dlp1
DECFSZ DELBYTE,F
GOTO dlp1
NOP
NOP
BCF DATAOUT
MOVLW 014H
MOVWF DELBYTE
dlp2
DECFSZ DELBYTE,F
GOTO dlp2
DECFSZ BITCOUNT,F
GOTO bitseq
RETLW 000H
sendone
BCF DATAOUT
MOVLW 016H
MOVWF DELBYTE
dlp3
DECFSZ DELBYTE,F
GOTO dlp3
NOP
NOP
BSF DATAOUT
MOVLW 014H
MOVWF DELBYTE
dlp4
DECFSZ DELBYTE,F
GOTO dlp4
DECFSZ BITCOUNT,F
GOTO bitseq
RETLW 000H



;****************
;sends 6 x 0FFh'S
;****************

SYNCBYTES
MOVLW 006H
MOVWF SYNCCOUNT
SYNCLOOP
MOVLW 0FFH
CALL SENDBYTE
DECFSZ SYNCCOUNT,F
GOTO SYNCLOOP
RETLW 000H

; ************ END OF ROUTINE *************



SENDDATA
MOVLW 008H
MOVWF PREDEL
MOVLW 00AH
MOVWF SECONDS
LOOPY
CALL PREAMBLE
CALL PREAMBLE
CALL PREAMBLE
CALL PREAMBLE
DECFSZ SECONDS,F
GOTO LOOPY
RETURN

;*****************
;global on command
;*****************


TURNONCHAN
CALL SYNCBYTES
CLRF CHECKSUM
MOVLW 004H
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FDH
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF VAR2,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVF VAR1,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 000H


;********************
;set checksum command
;********************

COMMFD8C
MOVLW 0Ah ; move 0Ah into work register
CALL SENDBYTE ; sends 0Ah
MOVLW 0FDh ; move FDh into work register
CALL SENDBYTE ; sends FDh
MOVLW 08Ch ; move 8Ch into work register
CALL SENDBYTE ; sends 8Ch
MOVLW 0E0h ; move E0h into work register
CALL SENDBYTE ; sends E0h
MOVLW 0BFh ; move BFh into work register
CALL SENDBYTE ; sends BFh
MOVLW 07Fh ; move 7Fh into work register
CALL SENDBYTE ; sends 7Fh
MOVLW 03Eh ; move 3Eh into work register
CALL SENDBYTE ; sends 3Eh
MOVLW 07Fh ; move 7Fh into work register
CALL SENDBYTE ; sends 7Fh
MOVLW 07h ; move 07h into work register
CALL SENDBYTE ; sends 07h
MOVLW 0Ah ; move 0Ah into work register
CALL SENDBYTE ; sends 0Ah
MOVLW 081h ; checksum = ((0A+FD+8C+E0+BF+7F+3E+7F+07+0A) XOR FF)+1 == 081h
CALL SENDBYTE ; sends 081h as the checksum
RETLW 0

CHOIS2002
03-02-2002, 20:10
;******************
;reboot box command
;******************


COMM11X ; reboots box command using E0 BF 7F 3E as the esn
; sends 07 FD 8D E0 BF 7F 3E CS
; sends 07 FD 8E E0 BF 7F 3E CS

CALL SYNCBYTES
CLRF CHECKSUM
MOVLW 07h ; move 07h into work register
CALL SENDBYTE ; sends 07h
MOVLW 0FDh ; move FDh into work register
CALL SENDBYTE ; sends FDh
MOVF VAR2,W ; move VARIABLE into work register
ADDWF CHECKSUM,1
CALL SENDBYTE ; sends 8Dh
MOVLW 0E0h ; move E0h into work register
CALL SENDBYTE ; sends E0h
MOVLW 0BFh ; move BFh into work register
CALL SENDBYTE ; sends BFh
MOVLW 07Fh ; move 7Fh into work register
CALL SENDBYTE ; sends 7Fh
MOVLW 03Eh ; move 3Eh into work register
CALL SENDBYTE ; sends 3Eh
MOVLW 060H
ADDWF CHECKSUM,1
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 0

;******************************
;added by crowman to save space
;******************************

ALL3LOOPS
LOOP3 MOVF VAR1,W
MOVWF VAR2
CALL COMM8
MOVLW 038H
ADDWF VAR2,F
CALL COMM8
INCF VAR1,F
MOVF VAR1,W
MOVWF VAR2
MOVLW 0C0H
SUBWF VAR1,W
BTFSS Z
GOTO LOOP3
RETLW 0

extra
CALL SYNCBYTES
MOVLW 9 ; length = 9
CALL SENDBYTE
MOVLW 0FDh
CALL SENDBYTE
MOVLW 044h
CALL SENDBYTE
MOVLW 0E0H
CALL SENDBYTE
MOVLW 0BFH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 03EH
CALL SENDBYTE
MOVLW 000h
CALL SENDBYTE
MOVLW 000h
CALL SENDBYTE
MOVLW 05AH
CALL SENDBYTE ; checksum
RETLW 0

CHANNELMAP

MOVLW 011H ; 17 length
CALL SENDBYTE
MOVLW 0FDH
CALL SENDBYTE
MOVLW 04DH
CALL SENDBYTE
MOVLW 0E0H
CALL SENDBYTE
MOVLW 0BFH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 03EH
CALL SENDBYTE
MOVLW 01FH
CALL SENDBYTE
MOVLW 00FH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 01FH
CALL SENDBYTE
MOVLW 01FH
CALL SENDBYTE
MOVLW 063H
CALL SENDBYTE
MOVLW 063H
CALL SENDBYTE
MOVLW 01BH
CALL SENDBYTE
RETLW 0

extra2
CLRF CHECKSUM
MOVLW 07H ; length = 7
CALL SENDBYTE
MOVF VAR2,W
ADDWF CHECKSUM,1
CALL SENDBYTE
MOVLW 0E0H
CALL SENDBYTE
MOVLW 0BFH
CALL SENDBYTE
MOVLW 07FH
CALL SENDBYTE
MOVLW 03EH
CALL SENDBYTE
MOVLW 0FFh
CALL SENDBYTE
MOVLW 062H
ADDWF CHECKSUM,1
MOVLW 0FFH
XORWF CHECKSUM,1
INCF CHECKSUM,0
CALL SENDBYTE
RETLW 0

Wilson F
08-02-2002, 20:34
:( En mi pais colombia que puedo utilixar, en especial bogota.

CHOIS2002
09-02-2002, 19:44
Depende de k tengais alli, si tienes decodificador JERROLD de GENERAL INSTRUMENT, puedes utilizar un cube de estos, ya k es valido para cualkier pais lo k importa es la marca del codificador pork no todos funcionan igual. Sino tienes decodificador pero la señal te llega hasta tu casa la puedes decodificar con un maxinew o maxisoni depende de si el sonido tambien viene codificado o no.

Wilson F
09-02-2002, 19:57
:cool: Necesito mas informacion, hasta ahora estoy empezando en esto CHOIS me gustaria saber exactamentecomo hacerlo, ademas saber de que pais es usted puesme interesa el tema.

CHOIS2002
10-02-2002, 18:05
Antes de darte yo la informacion sobre algo me tienes k decir k tienes tu alli, tienes decodificador?? no lo tienes pero tienes una cajita en la pared k lleva señal codificada de TV-CABLE??

Wilson F
11-02-2002, 00:28
no , lo que llega es un cable desde el poste en la calle, tiene 3 canales codificados unicamente., como puedo hacer un decodificador,:(

malbicho
12-02-2002, 14:48
LUK, porfa, vuelve a mandar las fotos y el hex, que por mucho que lo intento no hay manera de pillar nada.

Gracias.:rolleyes: :rolleyes: :rolleyes:

LUK
23-02-2002, 16:14
Las fotos del spanish cube las tengo ke buscar, las pille de una pagina ke ya no existe.

LUK
26-02-2002, 09:26
Os he colgao un manual ke tiene las fotos dentro.

Un saludo

WaRLiKe
03-04-2002, 02:15
He leido por encima lo ke puede hacer ese cube.. Pero con ese programa es con el ke se ve ono y quiero??, entoces tb se podria ver el plus, via digital y canal satelite digital??

Porfavor os pido ke me explikeis un poco por encima todo este asunto, ya ke de deco y tarjetas capuradoras es de lo ke menos entiendo. si teneis alguna web de informacion sobre este programa, hacermela saber.

Gracias

WaRLiKe
03-04-2002, 02:22
Ya encontre un web de informacion -> http://www.hackhispano.com/archivos/TVCABLE/Cube_v%201.0.pdf

Kiero haceros saber, ya ke aki la informacion es el tema principal, de ke compadres mios venden un aparato ke hace todos los servicios del ordenador con el cube, es decir, el cube es un programa para PC ke sirve para una tarjeta de tv capturadora para decodificar, no es cierto? Pues del aparato ke yo hablo, es parecido, es como una cajita negra, solo tienes ke darte de alta en ONO con la minima cuota, la de 1800pts , los de ONO vienen y te instalan una cajita cuadrada, la antena de ONO por cable, la cajita ke te instalan los de ONO es la clave principal, si se consiguiera montar una de esas y hacer un comercio ilegal, todo el mundo tendria ONo en su casa casi gratis, como eso no es muy posible, por eso se paga la cuota minima de ONO y asi evitar ke los de ONO vengan y te kiten la antena!! bien, pues cuando ya tienes ono contratado con la cuto minima y la antena de ono instalada, tu instalas la cajita negra esa ke venden mis compadres y asi consigo ver: VIA DIGITAL, ONO Y QUIERO GRATUITAMENTE!! Solo consigo ver esas tres porke van por cable, el plus va por aire y es imposible.

defcondos
03-04-2002, 09:27
warlike tu tienes la caja negra esa? y te va bien?
puedes poner mas datos sobre eso

Angeliyo
03-04-2002, 14:00
El cube es la cajita negra esa.
Y si q funciona.

eusadi
21-06-2002, 09:14
Hola peña, yo tengo el cubocable para Ono, sin pulsadores, ahora mandan señal de barrido y no veo las taquillas. ¿Que diferencia tiene el Spanish cube con el cubocable?,

gracias, saludos

putocable
17-10-2002, 10:45
el spanish cube sirve para madritel?

chumie
17-10-2002, 12:56
si q sirve

putocable
17-10-2002, 17:38
pues eso, cual de los dos llava el cube, es que me lo estoy montando yo y me parece que van a saltar hasta los plomos....
perdonad mi ignorancia...

PEPERONI
16-01-2004, 11:39
http://www.descargastv.com/Tv_cable/TVC(descargas).php

PEPERONI
16-01-2004, 11:42
http://www.descargastv.com/Tv_cable/TVC(descargas).php