Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Meta

#1971
Cita de: inga en  2 Febrero 2009, 21:41 PM
Hola amigos.

Normalmente escribo en la sección de lenguaje c, porque es el que me interesa aprender , pero tengo una pregunta que me parece que es mas de esta sección que de aquella.

Porque siempre que busco en la internet un manual que enseñe a programar en lenguaje maquina, siempre salen son manuales de essambler.

Por lo que he leido una cosa es codigo maquina y otra muy diferente es el essambler, o es que de lenguaje maquina no existen manuales.

agradeciendoles.

atte inga

Puedes aprender ASM de los PIC  primero que son más fáciles y más útiles que los ASM modernos si es para aplicaciones caseras. En empresas me callo.

Código (asm) [Seleccionar]

;******************************************************************************

;*                                VIDEO PIC 16F877                            *

;*                              (C)2007 ESTEBAN P.A.                          *

;*                                                                            *

;* PROGRAMA PARA REPRESENTAR CARÁCTERES B/N EN UNA PANTALLA DE TELEVISIÓN PAL *

;*                        UTILIZANDO UN PIC 16F877 A 20 MHZ                   *

;*                                                                            *

;******************************************************************************



;MODO 0 --> MUESTRA UNA PANTALLA DE (X,Y) 20 x 8 CARÁCTERES

;MODO 1 --> MUESTRA UNA PANTALLA DE (X,Y) 7 x 11 CARÁCTERES

;TANTO EL MODO O COMO EL MODO 1 DISPONEN DE 31 CARÁCTERES

;DE 8x8 PIXELS INDEPENDIENTES PARA CADA MODO DE VIDEO.



;PARA CAMBIAR EL MODO DE VIDEO SE DEBE CAMBIAR EL VALOR DE

;LA ETIQUETA MODO_PANT, LOS VALORES QUE ACEPTA SON 0 Y 1

;0=MODO DE VIDEO 0(20x8 CARÁCTERES) Y MODO DE VIDEO=1(7x11 CARÁCTERES)



;EL MODO 0 UTILIZA PARTE DE LOS REGISTROS DE MEMORIA DE LOS BANCOS 0 Y 1 DEL PIC,

;LA PANTALLA EN MODO 0 ESTÁ DIVIDIDA EN DOS PARTES, LA PARTE 0(PARTE SUPERIOR DE LA PANTALLA)

;QUE CONTIENE 80 REGISTROS DE MEMORIA DEL BANCO 0 Y LA PARTE 1(PARTE INFERIOR DE LA PANTALLA),

;QUE CONTIENE OTROS 80 REGISTROS DE MEMORIA, PERO DEL BANCO1



;EL MODO 1 UTILIZA 77 REGISTROS DE MEMORIA DEL BANCO 0



;LA MAYORIA DE LOS CARÁCTERES GRÁFICOS QUE REPRESENTA EL PROGRAMA

;EN LA TV HAN SIDO COPIADOS DEL MICROORDENADOR SINCLAIR ZX81



;------------------------------------------------------------------------------

;CONFIGURACIÓN, REGISTROS Y ETIQUETAS DEL PIC



__CONFIG _CP_OFF&_WDT_OFF&_PWRTE_ON&_HS_OSC&_BODEN_OFF&_LVP_OFF

list p=16f877A

#include p16f877A.inc



LONG_X EQU .20; NUM. MAX. DE CARÁCTERES DE FILA EN MODO 0

LONG_Y EQU .8; NUM. MAX. DE LÍNEAS DE UN CARÁCTER EN MODO 0

CHARMAXXY EQU .4; NUM. MAX DE CARÁCTERES DE COLUMNA EN MODO 0



LONGX_MODE1 EQU .7; NUM. MAX. DE CARÁCTERES DE FILA EN MODO 1

LONGY_MODE1 EQU .8; NUM. MAX DE LÍNEAS DE UN CARÁCTER EN MODO 1

CHARMAXY_MODE1 EQU .11; NUM. MAX. DE CARÁCTERES DE COLUMNA EN MODO 1





;REGISTROS DE USO PARA EL PROGRAMA

CBLOCK 20H

CONT,LINE,BYTECHAR,NUMCHAR,NUMCOL

CONTCHAR,LINECHAR,BUFFER,CONTLINEA,FLAGSTV

INICPANT; DIRECCIÓN DE MEMORIA DONDE COMIENZA LA PARTE 0 DE LA PANTALLA EN MODO 0 Y 1

ENDC



PANT2 EQU 0A0H;DIRECCIÓN DE MEMORIA DONDE COMIENZA LA PARTE 1 DE LA PANTALLA EN MODO 0



MODO_PANT EQU .0; 0=PANTALLA EN MODO 0, 1=PANTALLA EN MODO 1







;------------------------------------------------------------------------------





ORG 00H

GOTO START



ORG 05H





;---------------------------JUEGO DE CARÁCTERES--------------------------------



;-------------------------SET 0 DE CARÁCTERES MODO 0---------------------------

BYTEPANT

ADDWF BYTECHAR,W

ADDWF PCL,F

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'; SPACE 0

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'



    RETLW B'00000000'

RETLW B'00111100'

    RETLW B'01000010'

    RETLW B'01000010'

    RETLW B'01111110';A 1

    RETLW B'01000010'

    RETLW B'01000010'

    RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010'

RETLW B'01111100'

RETLW B'01000010';B 2

RETLW B'01000010'

RETLW B'01111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000000'

RETLW B'01000000';C 3

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111000'

RETLW B'01000100'

RETLW B'01000010'

RETLW B'01000010';D 4

RETLW B'01000100'

RETLW B'01111000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'01000000'

RETLW B'01111100'

RETLW B'01000000';E 5

RETLW B'01000000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'01000000'

RETLW B'01111100'

RETLW B'01000000'

RETLW B'01000000';F 6

RETLW B'01000000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000000'

RETLW B'01001110'

RETLW B'01000010';G 7

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01111110'

RETLW B'01000010'

RETLW B'01000010';H 8

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111110'

RETLW B'00001000'

RETLW B'00001000'

RETLW B'00001000';I 9

RETLW B'00001000'

RETLW B'00111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00000010'

RETLW B'00000010'

RETLW B'00000010'

RETLW B'01000010'

RETLW B'01000010';J 10

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000100'

RETLW B'01001000'

RETLW B'01110000'

RETLW B'01001000';K 11

RETLW B'01000100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'01000000';L 12

RETLW B'01000000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01100110'

RETLW B'01011010'

RETLW B'01000010';M 13

RETLW B'01000010'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01100010'

RETLW B'01010010';N 14

RETLW B'01001010'

RETLW B'01000110'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';O 15

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010'

RETLW B'01000010';P 16

RETLW B'01111100'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01010010';Q 17

RETLW B'01001010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010';R 18

RETLW B'01000010'

RETLW B'01111100'

RETLW B'01000100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000000'

RETLW B'00111100';S 19

RETLW B'00000010'

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'11111110'

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00010000';T 20

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';U 21

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';V 22

RETLW B'00100100'

RETLW B'00011000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';W 23

RETLW B'01011010'

RETLW B'00100100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'00100100'

RETLW B'00011000'

RETLW B'00011000';X 24

RETLW B'00100100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'10000010'

RETLW B'01000100'

RETLW B'00101000'

RETLW B'00010000';Y 25

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'00000100'

RETLW B'00001000'

RETLW B'00010000';Z 26

RETLW B'00100000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'00000010'

RETLW B'00111100';27 NÚMERO "2"

RETLW B'01000000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000110'

RETLW B'01001010'

RETLW B'01010010';28 NÚMERO "0"

RETLW B'01100010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'00000010'

RETLW B'00000100'

RETLW B'00001000';29 NÚMERO "7"

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00000000'



RETLW B'01111100'

RETLW B'10000010'

RETLW B'10011010'

RETLW B'10100010'

RETLW B'10100010';30 COPYRIGHT

RETLW B'10011010'

RETLW B'10000010'

RETLW B'01111100'

;------------------------------------------------------------------------------

NOP

NOP

NOP

;--------------------------SET 1 DE CARÁCTERES MODO1---------------------------

BYTEPANT1

CLRF PCLATH

BSF PCLATH,0

ADDWF BYTECHAR,W

ADDWF PCL,F

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'; SPACE 0

RETLW B'00000000'

RETLW B'00000000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01111110';A 1

RETLW B'01000010'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010'

RETLW B'01111100'

RETLW B'01000010';B 2

RETLW B'01000010'

RETLW B'01111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000000'

RETLW B'01000000';C 3

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111000'

RETLW B'01000100'

RETLW B'01000010'

RETLW B'01000010';D 4

RETLW B'01000100'

RETLW B'01111000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'01000000'

RETLW B'01111100'

RETLW B'01000000';E 5

RETLW B'01000000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'01000000'

RETLW B'01111100'

RETLW B'01000000'

RETLW B'01000000';F 6

RETLW B'01000000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000000'

RETLW B'01001110'

RETLW B'01000010';G 7

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01111110'

RETLW B'01000010'

RETLW B'01000010';H 8

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111110'

RETLW B'00001000'

RETLW B'00001000'

RETLW B'00001000';I 9

RETLW B'00001000'

RETLW B'00111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00000010'

RETLW B'00000010'

RETLW B'00000010'

RETLW B'01000010'

RETLW B'01000010';J 10

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000100'

RETLW B'01001000'

RETLW B'01110000'

RETLW B'01001000';K 11

RETLW B'01000100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'01000000';L 12

RETLW B'01000000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01100110'

RETLW B'01011010'

RETLW B'01000010';M 13

RETLW B'01000010'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01100010'

RETLW B'01010010';N 14

RETLW B'01001010'

RETLW B'01000110'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';O 15

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010'

RETLW B'01000010';P 16

RETLW B'01111100'

RETLW B'01000000'

RETLW B'01000000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01010010';Q 17

RETLW B'01001010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111100'

RETLW B'01000010';R 18

RETLW B'01000010'

RETLW B'01111100'

RETLW B'01000100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00111100'

RETLW B'01000000'

RETLW B'00111100';S 19

RETLW B'00000010'

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'11111110'

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00010000';T 20

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';U 21

RETLW B'01000010'

RETLW B'00111100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';V 22

RETLW B'00100100'

RETLW B'00011000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010'

RETLW B'01000010';W 23

RETLW B'01011010'

RETLW B'00100100'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01000010'

RETLW B'00100100'

RETLW B'00011000'

RETLW B'00011000';X 24

RETLW B'00100100'

RETLW B'01000010'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'10000010'

RETLW B'01000100'

RETLW B'00101000'

RETLW B'00010000';Y 25

RETLW B'00010000'

RETLW B'00010000'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'01111110'

RETLW B'00000100'

RETLW B'00001000'

RETLW B'00010000';Z 26

RETLW B'00100000'

RETLW B'01111110'

RETLW B'00000000'



RETLW B'00000000'

RETLW B'00011000'

RETLW B'00101000'

RETLW B'00001000'

RETLW B'00001000';27 NÚMERO "1"

RETLW B'00001000'

RETLW B'00111110'

RETLW B'00000000'



RETLW B'00011110'

RETLW B'00111111'

RETLW B'00011010'

RETLW B'00011111'

RETLW B'00011110';28 JET SET WILLY(1)

RETLW B'00001100'

RETLW B'00011110'

RETLW B'00111111'



RETLW B'01111111'

RETLW B'11111111'

RETLW B'11111111'

RETLW B'11011110'

RETLW B'00011111';29 JET SET WILLY(2)

RETLW B'00111011'

RETLW B'01100011'

RETLW B'01110011'



RETLW B'10000000'

RETLW B'11000000'

RETLW B'11000000'

RETLW B'11000000'

RETLW B'00000000';30 JET SET WILLY(3)

RETLW B'01000000'

RETLW B'11000000'

RETLW B'10000000'

;------------------------------------------------------------------------------

NOP

NOP

NOP

;------------------------------------------------------------------------------



TEXTO; EL SIGUIENTE TEXTO SE UBICARÁ EN LOS REGISTROS DE MEMORIA DEL BANCO 0

CLRF PCLATH

BSF PCLATH,1

MOVF BYTECHAR,W

ADDWF PCL,F

DT "      videopic      "

DT "                    "

DT "   este programa    "

DT " muestra caracteres "



TEXTO2; EL SIGUIENTE TEXTO SE UBICARÁ EN LOS REGISTROS DE MEMORIA DEL BANCO 1

CLRF PCLATH

BSF PCLATH,1

MOVF BYTECHAR,W

ADDWF PCL,F

DT " en una pantalla de "

DT " tv mediante un pic "

DT "                    "

DT "  ".126,.123,.124,.124,.125," esteban pa  "   



;------------------------INICIALIZACIÓN DE LOS PUERTOS-------------------------

START

BSF STATUS,RP0

BCF STATUS,RP1

MOVLW B'11111110'

MOVWF TRISB

MOVLW B'00000110'

MOVWF ADCON1

MOVLW B'00000110'

MOVWF TRISA

MOVLW B'11010111'

MOVWF TRISC

MOVLW B'00000000'

MOVWF SSPSTAT

BCF STATUS,RP0

CLRF PORTB



;---------RUTINA DE INICIALIZACIÓN Y ENLACE A LOS MODOS DE VIDEO---------------





MOVLW MODO_PANT

MOVWF FLAGSTV

MOVLW B'00100000'

MOVWF SSPCON

CALL BORRAPANT; INSERTA EN LOS REGISTROS DE MEMORIA EL VALOR "0"

CALL CONV_CHAR; CONVIERTE LOS VALORES ASCII DE LOS TEXTOS A VALORES

CALL CONV_CHAR2;PARA QUE PUEDAN SER UTILIZADOS POR EL PROGRAMA

BTFSS FLAGSTV,0

GOTO START_MODE0; PONE LA PANTALLA EN MODO 0

GOTO START_MODE1; PONE LA PANTALLA EN MODO 1







;----------------------------------MODO DE VIDEO 0-----------------------------

PAUSA2US

NOP

NOP

NOP

NOP

NOP

NOP

RETURN



STARTMODE0

NOP; ESTOS DOS NOP SON PARA SINCRONIZAR LOS 20 PRIMEROS

NOP; CARACTERES CON EL RESTO DE LINEAS

MODE0

CLRF SSPCON

CLRF PORTC

BCF PORTA,0; INICIO DEL PULSO DE SINCRONISMO HORIZONTAL

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BSF PORTA,0; FIN DEL PULSO DE SINCRONISMO HORIZONTAL

CALL PAUSA4US

CALL PAUSA4US



CALL PAUSA2US

BSF SSPCON,5

NOP

MOVF INDF,W; COMIENZO DE LOS 20 CARÁCTERES

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BCF SSPBUF,5

CALL PAUSA4US

CALL PAUSA2US

NOP

NOP

NOP

NOP

NOP

NOP

INCF BYTECHAR,F

DECFSZ NUMCHAR,F; CARACTERES 8*8 COMPLETOS?

GOTO NOCOMPLETOS

CLRF BYTECHAR

MOVLW LONG_Y

MOVWF NUMCHAR

DECFSZ NUMCOL,F;COLUMNA COMPLETA DE CARACTERES?

GOTO MODE0

NOP; COMIENZO DE LA SEGUNDA PARTE DE LA PANTALLA

NOP

MODE0_ZONA2

CLRF SSPCON

CLRF PORTC

BCF PORTA,0; INICIO SYNC

BTFSS FLAGSTV,0

GOTO REG_ZONA2

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

SIGUE_ZONA2

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BSF PORTA,0; FIN SYNC

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA2US

BSF SSPCON,5

NOP

MOVF INDF,W; COMIENZO DE LOS 20 CARACTERES

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT

MOVWF SSPBUF

INCF FSR,F

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BCF SSPBUF,5

CALL PAUSA4US

CALL PAUSA2US

NOP

NOP

NOP

NOP

NOP

NOP

INCF BYTECHAR,F

DECFSZ NUMCHAR,F; CARACTERES 8*8 COMPLETOS?

GOTO NOCOMPLETOS_ZONA2

CLRF BYTECHAR

MOVLW LONG_Y

MOVWF NUMCHAR

DECFSZ NUMCOL,F;COLUMNA COMPLETA DE CARACTERES?

GOTO MODE0_ZONA2

RETURN



NOCOMPLETOS_ZONA2

NOP

MOVLW LONG_X

SUBWF FSR,F

GOTO MODE0_ZONA2



REG_ZONA2

MOVLW CHARMAXXY

MOVWF NUMCOL

MOVLW PANT2

MOVWF FSR

BSF FLAGSTV,0

GOTO SIGUE_ZONA2



NOCOMPLETOS

NOP

MOVLW LONG_X

SUBWF FSR,F

GOTO MODE0





;---------------------------SINCRONISMO VERTICAL-------------------------------

PAUSA4P5

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

RETURN



PAUSA27P4

CALL PAUSA4P5

CALL PAUSA4P5

CALL PAUSA4P5

CALL PAUSA4P5

CALL PAUSA4P5

CALL PAUSA4P5

RETURN



PIGUALADORES

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

BCF PORTA,0

CALL PAUSA27P4

BSF PORTA,0

CALL PAUSA4P5

RETURN



PVERTICALESALM

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

BSF PORTA,0

CALL PAUSA27P4

BCF PORTA,0

CALL PAUSA4P5

RETURN



SYNCVERT

CLRF SSPCON

CLRF PORTC

CALL PIGUALADORES

CALL PVERTICALESALM

CALL PIGUALADORES

RETURN





PAUSA4US

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

RETURN





;----------------------------------LINEA NEGRA---------------------------------

LINEA64US

CLRF SSPCON

CLRF PORTC

BCF PORTA,0

CALL PAUSA4US

BSF PORTA,0

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

RETURN





;---------------------GENERACION DE UN CUADRO DE TV EN MODO 0------------------

START_MODE0

PANTALLA

CLRF FLAGSTV

CLRF BYTECHAR

MOVLW CHARMAXXY

MOVWF NUMCOL

MOVLW LONG_Y

MOVWF NUMCHAR

MOVLW INICPANT

MOVWF FSR

MOVLW .124

MOVWF LINE

NL1 CALL LINEA64US

DECFSZ LINE,F

GOTO NL1

CALL STARTMODE0

MOVLW .124

MOVWF LINE

NL3 CALL LINEA64US

DECFSZ LINE,F

GOTO NL3

BCF PORTA,0

CALL PAUSA4US

BSF PORTA,0

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL SYNCVERT

GOTO PANTALLA



;-----------------GENERACION DE UN CUADRO DE TV EN MODO 1----------------------



START_MODE1

MOVLW B'00100001'

MOVWF SSPCON

PANTALLA_MODE1

CLRF BYTECHAR

MOVLW CHARMAXY_MODE1

MOVWF NUMCOL

MOVLW LONGY_MODE1

MOVWF NUMCHAR

MOVLW INICPANT

MOVWF FSR

MOVLW .30

MOVWF LINE

NM1 CALL LINEA64US

DECFSZ LINE,F

GOTO NM1

CALL MODE1

MOVLW .18

MOVWF LINE

NM3 CALL LINEA64US

DECFSZ LINE,F

GOTO NM3

BCF PORTA,0

CALL PAUSA4US

BSF PORTA,0

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL PAUSA4US

CALL SYNCVERT

GOTO PANTALLA_MODE1





;------------------------------MODO DE VIDEO 1---------------------------------



MODE1

CLRF SSPCON

CLRF PORTC

BCF PORTA,0; INICIO DEL PULSO DE SINCRONISMO HORIZONTAL

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BSF PORTA,0; FIN DEL PULSO DE SINCRONISMO HORIZONTAL

CALL PAUSA4US

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

MOVLW B'00100001'

MOVWF SSPCON

MOVF INDF,W; COMIENZO DE LOS 7 CARACTERES

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F; FIN DE LOS 7 CARACTERES

NOP

NOP

NOP

NOP

NOP

NOP

NOP

CLRF SSPBUF

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

INCF BYTECHAR,F

NOP

NOP

NOP

MOVLW LONGX_MODE1

SUBWF FSR,F

DECF BYTECHAR,F

NOP

NOP

;REPITE LA LINEA

CLRF SSPCON

CLRF PORTC

BCF PORTA,0; INICIO DEL SINCRONISMO HORIZONTAL

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BSF PORTA,0; FIN DEL SINCRONISMO HORIZONTAL

CALL PAUSA4US

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

MOVLW B'00100001'

MOVWF SSPCON

MOVF INDF,W; COMIENZO DE LOS 7 CARACTERES

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F; FIN DE LOS 7 CARACTERES

NOP

NOP

NOP

NOP

NOP

NOP

NOP

CLRF SSPBUF

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

INCF BYTECHAR,F

NOP

NOP

NOP

MOVLW LONGX_MODE1

SUBWF FSR,F

DECF BYTECHAR,F

NOP

NOP

;REPITE LA LINEA

CLRF SSPCON

CLRF PORTC

BCF PORTA,0; INICIO DEL SINCRONISMO HORIZONTAL

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

BSF PORTA,0; FIN DEL SINCRONISMO HORIZONTAL

CALL PAUSA4US

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

MOVLW B'00100001'

MOVWF SSPCON

MOVF INDF,W; COMIENZO DE LOS 7 CARACTERES

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F

MOVF INDF,W

CALL BYTEPANT1

MOVWF SSPBUF

CALL DELAY_MODE1

INCF FSR,F; FIN DE LOS 7 CARACTERES

NOP

NOP

NOP

NOP

NOP

NOP

NOP

CLRF SSPBUF

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

INCF BYTECHAR,F

DECFSZ NUMCHAR,F; CARACTERES 8*8 COMPLETOS?

GOTO NOCOMPLETOS_MODE1

CLRF BYTECHAR

MOVLW LONGY_MODE1

MOVWF NUMCHAR

DECFSZ NUMCOL,F;COLUMNA COMPLETA DE CARACTERES?

GOTO MODE1

RETURN



NOCOMPLETOS_MODE1

NOP

MOVLW LONGX_MODE1

SUBWF FSR,F

GOTO MODE1



DELAY_MODE1

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

NOP

RETURN

;------------------------------------------------------------------------------



;PONE A "0" LOS REGISTROS DE MEMORIA DEL BANCO 0 Y 1 ,QUE UTILIZA

;EL PROGRAMA PARA REPRESENTAR LOS CARACTERES EN PANTALLA.

BORRAPANT

BCF STATUS,RP0

BCF STATUS,RP1

MOVLW .80

MOVWF CONT

MOVLW INICPANT

MOVWF FSR

BORRA

MOVLW B'00000000'

MOVWF INDF

INCF FSR,F

DECFSZ CONT,F

GOTO BORRA

BORRAPANT2

BCF STATUS,RP0

BCF STATUS,RP1

MOVLW .80

MOVWF CONT

MOVLW PANT2

MOVWF FSR

BORRA2

MOVLW B'00000000'

MOVWF INDF

INCF FSR,F

DECFSZ CONT,F

GOTO BORRA2

RETURN





;------------------------------------------------------------------------------



;CONVIERTE LOS CARACTERES ASCII DE LOS TEXTOS A CARÁCTERES PARA QUE PUEDAN SER UTILIZADOS POR EL PROGRAMA

CONV_CHAR

MOVLW .80; NUMERO DE CARACTERES A MOSTRAR EN EL BANCO0

MOVWF CONT

MOVLW INICPANT

MOVWF FSR

CLRF BYTECHAR; CONTIENE EL PUNTERO DE LA POSICION DE TEXTO

OTRAVEZ

CALL TEXTO

MOVWF INDF

MOVLW .96

MOVWF LINE

MOVF LINE,W

SUBWF INDF,F

BCF STATUS,C

RLF INDF

BCF STATUS,C

RLF INDF

BCF STATUS,C

RLF INDF

INCF BYTECHAR,F

INCF FSR,F

DECFSZ CONT,F

GOTO OTRAVEZ

CLRF PCLATH

RETURN



CONV_CHAR2

MOVLW .80; NUMERO DE CARACTERES A MOSTRAR EN EL BANCO1

MOVWF CONT

MOVLW PANT2

MOVWF FSR

CLRF BYTECHAR; CONTIENE EL PUNTERO DE LA POSICION DE TEXTO

OTRAVEZ2

CALL TEXTO2

MOVWF INDF

MOVLW .96

MOVWF LINE

MOVF LINE,W

SUBWF INDF,F

BCF STATUS,C

RLF INDF

BCF STATUS,C

RLF INDF

BCF STATUS,C

RLF INDF

INCF BYTECHAR,F

INCF FSR,F

DECFSZ CONT,F

GOTO OTRAVEZ2

CLRF PCLATH

RETURN



END


En esta web veo interesante este tipo de ASM.
http://usuarios.lycos.es/zootronica/modules.php?name=News&file=article&sid=32

Cuadno ya sepas algo, ya puedes hacer el de PC.

También puedes hacer cosas con PIC y Puerto serie RS232 y interfaz Visual C#.

http://www.abcdatos.com/tutoriales/tutorial/z9521.html

Saludos.
#1972
Juegos y Consolas / YaBasic en PS2.
26 Diciembre 2008, 15:23 PM
Hola:

Me encontré una demo de la PS2 que tenía guardada hace ya muchos años. Tiene YaBasic, en su día pasaba de él porque no lo entiendo pero me llamó la curiosidad y voy a probar a ver que se hace con él.

¿Hay algo parecido a PlayStation 3 o no tiene nada de eso?

Un cordial saludo.
#1973
Scripting / Re: Convertir bat en vbs
24 Diciembre 2008, 05:45 AM
Lo remarcado sólo son añadidos. Cambiar color, etc... Más funciones. En el fondo hace lo mismo.
#1974
Cita de: _carlos_ en 23 Diciembre 2008, 21:27 PM
podrías usar bhb 2.0

http://sites.google.com/site/cmdbatch/bhb-2-0



Muchas gracias a todos/as, voy a investigar.

PD: Si sabe algo más, no duden en poderlo aquí.
#1975
Scripting / Re: TUTORIAL vbscript
24 Diciembre 2008, 00:17 AM
Tranquilo que ya lo hará todo en uno. Hacer este tutorial requiere mucho tiempo. Si tienes prisa lo pasé de opoenoffice 3.0 desde openSUSE 11.1 a PDF. Lo haré mejor desde MS Office que tiene más calidad por lo que veo.

Descargar manual.
http://usuarios.lycos.es/tombraidereditor/cs/tutorial_de_vbscript.pdf

Hacer tutos de este tipo requiere mucha paciencia, uno no se da cuenta hasta que te metas en este mundo. Yo hice unos cuantos manuales a pdf y del puerto serie con visual c# tardé 3.5 meses en acabarlo.


#1976
Scripting / Re: Descubrimiento en comando for
23 Diciembre 2008, 20:45 PM
Buen trabajo Carlitos, quizás descubras más cosas por ahí.
#1977
No me refería eso, pero ahora que lo veo, me encanta. Buen dibujo,   ;)

Me refiero que cojas una imagen cualquiera. Por ejemplo imagen.jpg.



Con ella guardar la foto tal como se ve aquí. que al ejecutar el bat, aparezca lo que se ve.

¿Eso es posible?
#1978
Scripting / Convertir bat en vbs
23 Diciembre 2008, 13:52 PM
Hola:

¿Se puede hacer esto de BAT a VSB? ¿Es posible?
Me gustaría que haga justo la misma función de este BAT pero en VBS.



@ECHO OFF
:INICIO
cls
ECHO.
ECHO  ----------------------------------------------------------------------------
ECHO                       HACK360 IX 1.4 SAMSUNG (XBOX 360)
ECHO  ----------------------------------------------------------------------------
ECHO.
ECHO   Pasos a realizar:
ECHO.
ECHO.
ECHO.     1 - Crear arranque del Pendrive ( Proceso Manual)
ECHO.     2 - Instalar archivos del Hack360 en Pendrive
ECHO.   
ECHO.
ECHO.     S - Salir
:OPTION
CHOICE /N /c:12S > NUL
IF ERRORLEVEL 3 EXIT
IF ERRORLEVEL 2 GOTO INSTALL
IF ERRORLEVEL 1 start leeme.htm
GOTO OPTION

:INSTALL
set a=xxx
:ELIGE
CLS
@ECHO.
@ECHO  ----------------------------------------------------------------------------
ECHO                       HACK360 IX 1.4 SAMSUNG (XBOX 360)
@ECHO  ----------------------------------------------------------------------------
@ECHO.
choice /n /C:ADEFGHIJKLMNOPQR Selecciona la unidad para instalar el HACK360:
if %errorlevel%==16 set a=r
if %errorlevel%==15 set a=q
if %errorlevel%==14 set a=p
if %errorlevel%==13 set a=o
if %errorlevel%==12 set a=n
if %errorlevel%==11 set a=m
if %errorlevel%==10 set a=l
if %errorlevel%==9 set a=k
if %errorlevel%==8 set a=j
if %errorlevel%==7 set a=i
if %errorlevel%==6 set a=h
if %errorlevel%==5 set a=g
if %errorlevel%==4 set a=f
if %errorlevel%==3 set a=e
if %errorlevel%==2 set a=d
if %errorlevel%==1 set a=a
if %a%==xxx GOTO ELIGE
if %a%==a CALL :DISQUETE

XCOPY HACK360\. %a%:\ /E /V /Q /H /R /Y > NUL
GOTO FIN

:DISQUETE
CHKDSK a: > CHKDSK.TXT
find "1.457.664" CHKDSK.TXT > NUL
if %errorlevel%==0 GOTO :eof
DEL CHKDSK.TXT > NUL
CLS
ECHO.
echo  ERROR: EL ESPACIO DETECTADO EN LA DISQUETERA NO ES EL ESPERADO
ECHO.
PAUSE
GOTO INICIO

:FIN
DEL CHKDSK.TXT > NUL
CLS
ECHO.
echo  PROCESO FINALIZADO CORRECTAMENTE
ECHO.
PAUSE
GOTO INICIO


http://www.elotrolado.net/hilo_hack360-samsung-8_812131

Descargar.

Saludo.

EDITO:

Otra modificación en azul.

Citar
@ECHO OFF
TITLE HACK360 IX 1.4 SAMSUNG (XBOX 360)
:INICIO
cls
ECHO.
ECHO  ----------------------------------------------------------------------------
ECHO                       HACK360 IX 1.4 SAMSUNG (XBOX 360)
ECHO  ----------------------------------------------------------------------------
ECHO.
ECHO   Pasos a realizar:
ECHO.
ECHO.
ECHO.     1 - Crear arranque del Pendrive ( Proceso Manual)
ECHO.     2 - Instalar archivos del Hack360 en Pendrive
ECHO.   
ECHO.
ECHO.     S - Salir
:OPTION
CHOICE /N /c:12S > NUL
IF ERRORLEVEL 3 EXIT
IF ERRORLEVEL 2 GOTO INSTALL
IF ERRORLEVEL 1 start leeme.htm
GOTO OPTION

:INSTALL
set a=xxx
:ELIGE
CLS
@ECHO.
@ECHO  ----------------------------------------------------------------------------
ECHO                       HACK360 IX 1.4 SAMSUNG (XBOX 360)
@ECHO  ----------------------------------------------------------------------------
@ECHO.
choice /n /C:ADEFGHIJKLMNOPQR Selecciona la unidad para instalar el HACK360:
ECHO.
ECHO Espere un momento, por favor...
ECHO.

if %errorlevel%==16 set a=r
if %errorlevel%==15 set a=q
if %errorlevel%==14 set a=p
if %errorlevel%==13 set a=o
if %errorlevel%==12 set a=n
if %errorlevel%==11 set a=m
if %errorlevel%==10 set a=l
if %errorlevel%==9 set a=k
if %errorlevel%==8 set a=j
if %errorlevel%==7 set a=i
if %errorlevel%==6 set a=h
if %errorlevel%==5 set a=g
if %errorlevel%==4 set a=f
if %errorlevel%==3 set a=e
if %errorlevel%==2 set a=d
if %errorlevel%==1 set a=a
if %a%==xxx GOTO ELIGE
if %a%==a CALL :DISQUETE

XCOPY HACK360\. %a%:\ /E /V /Q /H /R /Y > NUL
GOTO FIN

:DISQUETE
CHKDSK a: > CHKDSK.TXT
find "1.457.664" CHKDSK.TXT > NUL
if %errorlevel%==0 GOTO :eof
DEL CHKDSK.TXT > NUL
CLS
COLOR 0C
ECHO.
echo  ERROR: EL ESPACIO DETECTADO EN LA DISQUETERA NO ES EL ESPERADO
ECHO.
ECHO Pulse cualquier tecla para SALIR.
PAUSE>NUL
COLOR 07
GOTO INICIO

:FIN
DEL CHKDSK.TXT > NUL
CLS
COLOR 0A
ECHO.
echo  PROCESO FINALIZADO CORRECTAMENTE
ECHO.
ECHO Pulse cualquier tecla para SALIR.
PAUSE>NUL
COLOR 07
GOTO INICIO
#1979
Hola:

Muy currado el tutorial. He hecho una prueba con el bat.


ECHO @OFF
ECHO ^<head^>^<title^>Prueba del BAT^</title^>^</head^>^<body^>Esto es una prueba^<p^>^<ahref="directorio/prueba2.html"^>Enlace 2^</a^>^</p^>^</body^>^</html^> > prueba.html
MKDIR directorio
CD directorio
ECHO ^<head^>^<title^>PRUEBA 2^</title^>^</head^>^<p^>^<ahref="../prueba.html"^>VOLVER^</a^>^</p^>^<body^>Esto es una prueba del html dentro de la carpeta directorio.^</body^>^</html^> > prueba2.html


Como podrás comprobar funciona. Pero quiero hacer otra cosa que no se si se puede hacer  o al menos vamos a intentarlo. Lo que quiero hacer un logo o una imagen cualquiera tamaño de nuestro avatar de este foro y copiar su código en el bat. Me imagino que se podrá obtener con un hexadecimal. Probamos este mismo que tiene fama www.winhex.com

Ahora me dirás si se puede hacer.

Un cordial saludo.


EDITO:

PD: Aquí hay algo que deberías incluir en tu tutorial.
http://www.cristalab.com/tips/49576/programacion-avanzada-de-archivos-en-lotes-.bat.html
http://www.cristalab.com/tips/48410/programacion-batch-con-archivos-.bat.html
#1980
.NET (C#, VB.NET, ASP) / Re: Pasar de VC# a VB
23 Diciembre 2008, 04:37 AM
Cita de: Hadess_inf en 22 Diciembre 2008, 16:35 PM
Link roto: http://electronicapic.iespana.es/manual/picrs232.pdf

Hola:

No está roto. Pon ese enlace otra vez en el navegador y funciona. Lo acaba de probar y me funciona, eso si, tarda en cargar porque son 20,1 MB en PDF.

Si no puedes en tu navegador, aquí hay otro enlace para verlo, pero si quieres el PDF, tienes que registrarte si no lo está ya.
Ver manual
http://www.slideshare.net/Metaconta/pic-rs232-puerto-serie-con-pic16f84a-presentation

Saludo.

EDITO:
Aquí también te la puedes bajar. El autor de la web abcdatos me lo recomendó colocar mis manuales ahí.

http://www.abcdatos.com/tutoriales/tutorial/z9521.html

Si ya puedes descargarlo me avisa para saberlo.

Gracias por tu tiempo.