elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  DEBUG (BATCH)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: DEBUG (BATCH)  (Leído 19,651 veces)
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: DEBUG (BATCH)
« Respuesta #10 en: 28 Julio 2010, 20:15 pm »


BAT, PY, PERL, DELPHI, C, C# C++ Java JS VBN VBS PHP MySQL ASP


¿Para qué tantos lenguajes?


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Ari Slash


Desconectado Desconectado

Mensajes: 1.783



Ver Perfil WWW
Re: DEBUG (BATCH)
« Respuesta #11 en: 28 Julio 2010, 20:23 pm »

si quieres aprender a hacer algun juego, debes saber para que estan orientados tales lenguajes, por ejemplo de todos los que nombrastes, solo C/C++, python y java servirian para juegos, y a lo mejor vb.net depende de como lo uses.

sabiendo batch dudo que apendas a usar ensamlador desde debug

el lenguaje ensamblador es el mas bajo nivel que hay antes del binario
y no es nada facil como los comunes lenguajes de programacion, debes saber sobre registros del procesador, posiciones de memoria etc etc, es toda una arquitectura.

el siguiente bajo nivel seria C, por eso te decia que lo aprendieras con su biblioteca opengl. Peru bueno si quieres aprender a usar el debug, esta sección de scripting no es para eso
ve al foro de asm o al de electronica


saludos


En línea

flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #12 en: 29 Julio 2010, 03:11 am »

a ver gente no es para tirar leña al fuego y tampoco leo la cabeza de nadie pero lo de los lenguajes
Citar
BAT, PY, PERL, DELPHI, C, C# C++ Java JS VBN VBS PHP MySQL ASP
...se me hace q es por no mandarlo a otro lado.... :laugh: che FerJGS te di dos lugares para leer...http://www.scribd.com/doc/7462877/Debug me parecio el mejorcito y lo busque xq me generaste esa inquietud...y si la verdad que alguno de los chicos que saben deberia hacer un tutorial...digamolo hay comandos que hay poca info solo por citas runas debug WMIC etc y si tienen razon para debug hay q saber algo de asm...pero bue nadie creo q en su sano juicio haga un simulador de vuelo en bat y eso que es para mi, mi inicio, el bat me encanta es simple y sin tanta complicacion como otros lenguajes solo que hay "obras maestras" y decis como hizo este tipo para hacer eso en bat y quiero entender q corno dice su codigo
bue...viendo lo que hace este cristiano aca un pequeño tuto q puso
Citar
Gráficos con Debug en Batch

¿Qué es Debug?
 Debug es un debugger,  un depurador de código ensamblador para 16 bits. Windows lo incorpora por defecto y puede ser usado desde el CMD.
Ensamblador es todo un lenguaje, y obviamente por consecuencia las posibilidades de Debug son infinitas. Sin embargo en este manual se explica de forma sencilla como acceder al segmento de pantalla y poder manipular de una forma potente, sencilla y eficaz los gráficos. Útil para juegos o para darle una apariencia más profesional a los scripts.

El segmento de pantalla.

El segmento de pantalla es un pedazo de la memoria donde todas las computadoras que ejecutan DOS, almacenan sus caracteres junto con sus atributos correspondientes a la consola de comandos.
El citado segmento comienza en la dirección 0800h.
Al escribir datos directamente en un desplazamiento sobre ese segmento, esos datos aparecerán en pantalla.

Posición.

En ese segmento una posición ocupa dos bytes. El primero contiene el carácter y el segundo los atributos de éste.
Trabajando en una consola de x80y25, como es por defecto, veríamos que toda la pantalla ocupa 4000 bytes.
Bien, sabiendo que cada fila ocupa 160 bytes y cada columna ocupa 2 bytes, no es muy difícil hallar la fórmula para calcular la posición donde insertar un carácter.
La fórmula es esta: fila*160+columna*2. Lo que, adaptándolo al plano cartesiano, quedaría así: x*2+y*160. Puesto que las columnas son el eje horizontal X y las filas el eje vertical Y.
Así pues, la coordenada x1y3, por ejemplo, aplicando la fórmula, quedaría así:

1*2+3*160 = 482D = 1E2H

Se ha transformado a hexadecimal ya que es el sistema de numeración empleado en el uso de memoria.

Aplicación a Batch.

Lo que nos interesa es poder usar este sistema para realizar gráficos en batch. Vamos a ver como.

Código:

(
Echo.EB800:1E2 “Û”A
Echo.q
)|Debug>nul

En ese código hemos escrito desde Debug en la posición EB800:1E2. Hemos escrito dos bytes, que son los mencionados al comienzo de este manual: el carácter a escribir (1º byte) y su atributo (2º byte).
El carácter se encierra entre comillas, y posteriormente le sigue su atributo, que es un color en hexadecimal.
El atributo puede contener dos números hexadecimales, que corresponden al color de fondo de la coordenada en cuestión y al color del carácter, respectivamente.
Por lo tanto, al escribir en el segmento de pantalla algo así:

Código:

EB800:1E2 “A”AF


Lo que hicimos fue escribir en x1y3 la letra “A”; darle un fondo verde brillante a la casilla y un color blanco brillante a la letra.

Esto es todo, tan sólo hay que usar el ingenio para conseguir realizar gráficos más complejos y automatizar el cálculo de coordenadas hexadecimales.






Copyright © Binary_Death
« Última modificación: 29 Julio 2010, 03:46 am por flony » En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #13 en: 29 Julio 2010, 12:34 pm »

Gracias flony, por fin alguien que me entiende y opina igual que yo, sé de gente que en cuestión de un año ha aprendido hasta 7 lenguajes de programación y lo cierto es que tampoco me interesan tantos lenguajes pero necesito especializarme primer en batch para ir preparado al siguiente nivel. No estoy aprendiendo a programar en BATCH para hacer juegos, ¿qué consigo con eso? mover bolas en una consola, hacer como coches? Esos juegos son más cutres que los de los años 60. Yo lo que quiero es hacerlos para poner en práctica el debug y no solo juegos, también comandos como hizo "bolivianito" su famoso Colous. Y cosas relacionadas con la utilización del ratón en la consola que me vendrán muy bien. El tutorial del debug es básico pero creo que podré ir aclarándome. Gracias.
En línea

FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #14 en: 1 Agosto 2010, 00:22 am »

Otra cosa...¿cómo hago para que batch detecte las coordenadas del ratón con debug?
En línea

FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #15 en: 9 Agosto 2010, 00:25 am »

Hola...¿puede alguien responder a mi pregunta?
En línea

DA KILLER

Desconectado Desconectado

Mensajes: 85


Solo sé que no sé nada...


Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #16 en: 9 Agosto 2010, 03:36 am »

Alex sabe de eso, a todo esto dejo una duda: ¿Que estoy haciendo mal en este code?

Código
  1. @echo off
  2. mode con cols=40 lines=20
  3. echo. ######################################
  4. echo. ####### -= PRUEBA CON DEBUG =- #######
  5. echo. ######################################
  6. echo. ######################################
  7. echo. ######################################
  8. echo. ######################################
  9. echo. ######################################
  10. echo. ######################################
  11. echo. ######################################
  12. echo. ######################################
  13. echo. ######################################
  14. echo. ######################################
  15. echo. ######################################
  16. echo. ######################################
  17. echo. ######################################
  18. echo. ######################################
  19. echo. ######################################
  20. echo. ######################################
  21. (
  22. Echo.EB800:A0 "R" 1F
  23. Echo.EB800:A2 "o" 1F
  24. Echo.EB800:A4 "d" 1F
  25. Echo.EB800:A6 "r" 1F
  26. Echo.EB800:A8 "i" 1F
  27. Echo.EB800:AA "g" 1F
  28. Echo.EB800:AC "o" 1F
  29. Echo.EB800:AE " " 1F
  30. Echo.EB800:B0 "K" 1F
  31. Echo.EB800:B2 "I" 1F
  32. Echo.EB800:B4 "L" 1F
  33. Echo.EB800:B6 "L" 1F
  34. Echo.EB800:B8 "E" 1F
  35. Echo.EB800:BA "R" 1F
  36. )|Debug>nul

En fin, lo que hace es tras la pausa escribir "Rodrigo KILLER" en formato de color F1 (letras blancas sobre azul), pero no se porque me cambia el valor de las columnas no importa el numero que ponga, a 85 que es el tamaño por default.

Me podrían echar un cable?

Desde ya gracias.

PD: Fer, busca info sobre el comando EXTERNO mouse.com o el antiguo click.com creo que era, saluDoS
En línea

.: DA KILLER :.


SmartGenius

Desconectado Desconectado

Mensajes: 181


:P


Ver Perfil WWW
Re: DEBUG (BATCH)
« Respuesta #17 en: 9 Agosto 2010, 07:42 am »

Hola...¿puede alguien responder a mi pregunta?

Podrias perfectamente usar le buscador.

http://foro.elhacker.net/scripting/manual_usar_mouse_en_batch-t260579.0.html

Saludos.
En línea


EddyW

Desconectado Desconectado

Mensajes: 187



Ver Perfil WWW
Re: DEBUG (BATCH)
« Respuesta #18 en: 9 Agosto 2010, 16:39 pm »

Debug usa el valor default de las columnas 80Col, a lo que se no puedes cambiarlo ;)
Además te falto el Q de Quit en el debug:
Código
  1. @echo off
  2. mode con cols=40 lines=20
  3. echo. ######################################
  4. echo. ####### -= PRUEBA CON DEBUG =- #######
  5. For /l %%_ In (1 1 16) Do (
  6. echo. ######################################)
  7. (
  8. Echo.EB800:A0 "R"1F"o"1F"d"1F"r"1F"i"1F"g"1F"o"1F" "1F"K"1F"I"1F"L"1F"L"1F"E"1F"R"1F
  9. )|Debug>nul

Mejor?

SaluDOS!!!
En línea

flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: DEBUG (BATCH)
« Respuesta #19 en: 12 Agosto 2010, 01:48 am »

bue aca la pregunta que significa esta parte del code
Código:
Echo.EB800:A0 "R"1F"o"1F"d"1F"r"1F"i"1F"g"1F"o"1F" "1F"K"1F"I"1F"L"1F"L"1F"E"1F"R"1F
o seas s q es para ingresar letras pero
1)porque EB800 y no EB799
2)porque A0 y no A1
3)1F y no F sola
En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
Páginas: 1 [2] 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Batch] | [Debug.exe] ¿Como hacer una salida ascii a un .txt?
Scripting
klaine 4 5,976 Último mensaje 29 Marzo 2011, 22:57 pm
por klaine
Debug c++
Programación C/C++
inewcl 2 2,324 Último mensaje 7 Noviembre 2016, 16:53 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines