• Martes 13 de Mayo de 2025, 05:13

Mostrar Mensajes

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


Mensajes - Enko

Páginas: 1 ... 14 15 [16] 17 18 ... 77
376
ASM (Ensamblador) / Re: Boot Loader
« en: Domingo 27 de Mayo de 2007, 01:12 »
Por sierto, cambie mi firma. Que les parece?
Por ahora logre crear una funcion que imprime cadenas sin usar interrupciones. Ahora voy a dedicarme a pasar al modo protegido, lo logro, , voy a postear aca el codigo del nuevo kernel.

377
ASM (Ensamblador) / Re: Boot Loader
« en: Sábado 26 de Mayo de 2007, 23:31 »
Ya leí bastante de los manuales de intel, son más teoricos de lo que pensaba. Creí que serían muchisimo más técnicos y densos, y la verdad que son bastante light. :P

off topic:
mira como toca esa chinita: Li Jie
http://www.youtube.com/watch?v=H36vL3MzQDU

378
Pascal / Re: Analizador Lexico Para C
« en: Sábado 26 de Mayo de 2007, 21:25 »
Puse download lex en Google y la primer página que aparecio:

http://www.therobs.com/uman/lexyacc.shtml

De esa misma página, tenés el codigo fuente de lex y yacc para TurboPascal:
http://www.musikwissenschaft.uni-mainz.de/...ply/tply41a.zip

379
ASM (Ensamblador) / Re: Boot Loader
« en: Viernes 25 de Mayo de 2007, 00:32 »
Citar
¿Serrana? Nunca me termino de cerrar Jason Becker ... la musica de su ex compañero Friedman me copa mas.
Cosas de gustos, no se puede descutir. Como guitarristas son todos buenos, ya pasa por el estilo que a uno le puede gustar o no.

Yo prefiero la onda más a Paganini, no me refiero a la parte de virtuoso frenético tipo Malmsteen sino que no se como explicarlo.
Las composiciones de Paganini  principalmente los Capriccios tienen algo en comun y eso que tienen en comun es lo que me gusta. Es que usa escalas prinipalmente Menores y mezcla entre las puras, melodicas y harmónicas. Además usa a veces la 5ta y 7ma aumentada. Además claro está las cromáticas.

No digo que solo la escala define la composicion pero Vai usara principalmente Pentatonicas de Blues Y escalas Exoticas como Menor doble armonica, Oriental y algunas pentatonicas raras como Egipica y China en ciertos temas.
Por supuesto tambien las pentatonicas de blues y mas obvio que todos los artistas usan otras notas que no estan en las escalas (no son cuadrados) pero si tienen una guia.

Ba, resumiendo, el Blues mucho no me gusta  :alien:

380
ASM (Ensamblador) / Re: Boot Loader
« en: Viernes 25 de Mayo de 2007, 00:17 »
Se la rebanca Vai, pero si escuchas ves los dos videos completos que pase y escuchas los dos discos de Jason Becker: Perpetual Burn y Perspective (el segundo solamente lo escribió, no pudo tocar guitarra por lo que hay una orquestra sinfónica de vez en cuando y instrumentos raros); veras que me gusta otra onda en la que  aunqeu parezca mentira, Malmsteen no está del todo incluido o casi totalmente excluido.
Tampoco me gusta Marty Firedman que estuvo en Cacophony con Jason aunque lo influencio al igual que cuando estaba joven Malmsteen tiene un estilo propio del mal llamado metal neoclasico. Es Speed Metal y ya. (por ahi se puede decir melodico como para variar).

381
ASM (Ensamblador) / Re: Boot Loader
« en: Viernes 25 de Mayo de 2007, 00:04 »
TRAMPA.... jajaja
probá esto tambien:
tenia ya ALSA diagnosticado (muestra un monton de temas y ejercicios, si podes miralo completo yo lo hice con el de vai. Es mas lo estoy escuchando ahora, no lo veo porque no me gusta la cara de Vai, un poco "cheto" y no me gusta la cara de "Santana" que pone. Na es broma, todo bien con el :rolleyes: )
http://www.youtube.com/watch?v=K3fvB4QO1qo

aca está sanito: (fijate  los arpegios de la parte final, el principio es aburrido)
http://www.youtube.com/watch?v=RaCndizvS_Y

382
ASM (Ensamblador) / Re: Boot Loader
« en: Jueves 24 de Mayo de 2007, 23:30 »
Citar
Como lo incluis en vez de ensamblar dos binarios>
mov  si, str_kernel_ok - 512
Ah... con razon...  Gracias!
Ahora voy a ensamblarlos por separado y luego los junto haciendo una especie de
Citar
incbin "boot.bin"
incbin "kernel.bin"
seguro que en fasm no se hace asi, pero recuerdo que se podia usando una macro... ahora la busco.
Citar
PD. ¿No te da verguenza usar cadenas terminadas en $?
No se,  tenia pensado que terminen en nulo pero use $ :ouch:
jaja, en algun momento lo cambio.

Por sierto, ahora empiezo a leer sobre modo protegido supongo?
Que lecturas recomendarias? Tengo un poco de tiempo y ganas pero no se por donde encararlo bien.

383
Delphi / Re: De Donde Puedo Descargar Delphi Gratis
« en: Jueves 24 de Mayo de 2007, 22:20 »
http://www.turboexplorer.com/

Es libre para uso comercial creo. No podes agregarle mas componentes de los que vienen.
Hay dos versiones. .NEt y Win32. Ambas requeren el SDK 1.1 de la nerframework , el run time de J#.... en general el paquete llamada prerequest.zip que est'a en la misma p'agina.

384
ASM (Ensamblador) / Boot Loader
« en: Jueves 24 de Mayo de 2007, 21:49 »
Estuve haciendo un boot loader que logra cargar el kernel desde el disquet usando lectura de sectores.
Lee desde el disquet y lo carga a la direccion 0x1000:0000 y luego hace un salto alli.
El kernel por ahora se encarga de mostrar un texto en la pantalla nomas y luego reiniciar. Si el loader no encuentra el disquet o el kernel, muestra error y espera para reiniciar.
Hasta ahora todo bien. Las cosas dudosas que ocurren:
Para mostrar el mensaje de "kernel cargado" desde el kernel, la cadena la tengo que colorar en archivo del bootloader, sino no se muestra pero ensambla.
Otra cosa, la funcion que muestra el texto, debo tenerla repetida con otro nombre en el kernel porque si no, no muestra el texto pero si ensambla.

Por sierto :devil: , me mata la forma que use para crear la imagen de disquet que uso con vmware o VirtualPC:
Código: Text
  1.  
  2. include "bootloader.asm"
  3. include "kernel.asm"
  4. db  1474560 - $ dup 0
  5.  
  6.  
Lo malo, es que no tiene formato pero es suficiente por ahora.

Este es el loader:
Código: Text
  1.  
  2. MAX_TRIES   equ 3
  3.   use16
  4.   org   0
  5.   jmp  0x07C0:start
  6. start:
  7.   mov  ax, cs
  8.   mov  ds, ax
  9.   mov  es, ax
  10.  
  11.   mov  di, MAX_TRIES
  12.   mov  dh, 5    
  13. reset_floppy:  
  14.   mov  ah, 0x00
  15.   mov  dl, 0x00
  16.   int  0x13
  17.   dec  di
  18.   jz  no_floppy
  19.   jc  reset_floppy
  20. ;floppy ready, procede read kernel
  21.   mov  di, MAX_TRIES
  22. read_kernel:      
  23.   mov  ah, 0x02;RawRear
  24.   mov  al, 0x01;One Sector
  25.   mov  cl, 0x02;Second Sector
  26.   mov  ch, 0x00;First Cylinder
  27.   mov  dh, 0x00;First Head
  28.   mov  dl, 0x00;Floppy Drive
  29.   mov  bx, 0x1000;The firs Page
  30.   mov  es, bx;0x1000:0x0000
  31.   xor  bx, bx
  32.   int  0x13
  33.   dec  di
  34.   jz  no_kernel
  35.   jc  read_kernel
  36. kernel_leaded:
  37.   jmp  0x1000:0x0000;jump to kernel  
  38. no_floppy:
  39.   mov  si, str_no_floppy
  40.   call  print_string
  41.   jmp  reboot
  42.  
  43. no_kernel:  
  44.   mov  si, str_no_kernel
  45.   call  print_string
  46. reboot:
  47.   mov  si, str_press_key
  48.   call  print_string
  49.   xor  ax, ax
  50.   int  16h&#59;wait key
  51.   jmp  0xFFFF:0x0000
  52.  
  53. ;si = source string  
  54. print_string:
  55.   mov  dl, 1
  56. start_print:
  57.   mov  ah, 0Ah
  58.   mov  al, [si]
  59.   cmp  al, '$'
  60.   je  end_print  
  61.   mov  bx, 7
  62.   mov  cx, 01
  63.   int  10h  
  64.  
  65.   mov  ah, 02h
  66.   inc  dl  
  67.   inc  si
  68.   int  10h
  69.   jmp  start_print
  70. end_print:
  71.   inc  dh
  72.   ret
  73. ;string messages  
  74.   str_no_floppy   db ' Flopy Drive not Found$'
  75.   str_no_kernel  db ' Kernel File not Found$'
  76.   str_press_key  db ' Press Key for Reboot $'
  77.   str_kernel_ok  db ' Kernel Cargado !!!   $'
  78. ;sizing the bootsector 510 + 0xAA55    
  79.   db  510 - $  dup 0
  80.   dw  0xAA55
  81.  
  82.  
Código: Text
  1.  
  2.       mov  si, str_kernel_ok    
  3.       call  print_stringa
  4.  
  5.   xor  ax, ax
  6.   int  16h  &#59;wait key
  7.   jmp  0xFFFF:0x0000;reboot
  8.  
  9. print_stringa:
  10.   mov  dl, 1
  11. start_printa:
  12.   mov  ah, 0Ah
  13.   mov  al, [si]
  14.   cmp  al, '$'
  15.   je  end_printa  
  16.   mov  bx, 7
  17.   mov  cx, 01
  18.   int  10h  
  19.  
  20.   mov  ah, 02h
  21.   inc  dl  
  22.   inc  si
  23.   int  10h
  24.   jmp  start_printa
  25. end_printa:
  26.   inc  dh
  27.   ret
  28.  
  29.  
Todavia no se por que no puedo tener la cadena "kernel_ok" en el kernel, sino que en el loader con las demas y tampoco porque no puedo usar la misma funcion dos veces porque teoricamente debería ser posible.
Seguramente es un problema con el segmento de datos y de codigo pero no se...

PD:
Hice un hilo nuevo para no revivir uno viejo, pero podria unirse con>
http://foros.solocodigo.com/index.php?show...&hl=nano+loader

385
ASM (Ensamblador) / Re: Entrevista A Un Hacker De Ensamblador
« en: Miércoles 23 de Mayo de 2007, 01:27 »
Cita de: "Eternal Idol"
Hace unos dias estuve probando un BL y un mini-Kernel (todo en asm) que pasaba a modo protegido pero la verdad no tengo tiempo ni ganas de hacer nada  :scream:
Amargo!

No ta bien,  :P .

Si fuera para un proyecto de la facultad relacionado con programacion sería mucho más facil. Pero como está el trabajo, estudio, otras obligaciones.... puff  Te saca muchas ganas la falta de tiempo.

Yo ahora me puse a practicar violin para despejarme un rato.  :scream:



Tengo una duda, Si el kernel funciona en 32 bit, no podría acceder a las interupciones de la Bios, entonces... ¿Como se hace? Acceso a hardware mediante puertos y direcciones de memoria?
¿Hay forma de usar interupciones con kernel en modo real (32 bit me refiero sino me equivoco con el nombre)?

moxy:
Soy mas novato  en esto que vos, pero como estuve leyendo un poco justo me acordé de ese detalle.
Por sierto que el BL de Win95 usa 3 sectores!!!!!
http://www.nondot.org/sabre/os/files/Booting/win95.asm
Citar
; There is some really strange code in this boot record....
;
; I bet Bill Gates hired some crazy mother fucker to write this shit.
; It seems like he had really tried to make the code fit within one sector.
; But when it didn't hid just decided to use three instead...

fijate esta página que es interesante:
http://www.nondot.org/~sabre/os/articles/

386
ASM (Ensamblador) / Re: Entrevista A Un Hacker De Ensamblador
« en: Martes 22 de Mayo de 2007, 21:21 »
Se ve interesante el tutorial. Por sierto que:
Citar
Ya que un BL solo dispone de 512 bytes
Eso no es del todo sierto; dispone de 510 bytes,  ya que al final, como mencionaste debe terminar con la firma 0xAA55  :rolleyes:

Por sierto, me acuerdo que Eternal Idol había escrito un nano loader para testear:
http://foros.solocodigo.com/index.php?show...&hl=nano+loader
Y además estaba la idea de hacer algo:
http://foros.solocodigo.com/index.php?showtopic=16853

387
Pascal / Re: No Me Compila ....
« en: Jueves 10 de Mayo de 2007, 21:35 »
De seguro es porque la variable "d", "raiz1" y "raiz2" deben ser de tipo Real
Código: Text
  1.  
  2.  d, raiz1, raiz2: Real;
  3.  
  4.  
Creo que con eso ya quedaria resuelto.
Es que el operador "/" se usa para diviciones reales, si quieres dividir enteros, debes usar "div" pero olvidate de lo que sige despues de lo coma.

388
C/C++ / Re: Convención De Llamada
« en: Jueves 10 de Mayo de 2007, 00:04 »
Con el link de la msdn me surgieron dudas... :rolleyes:

Dice que la convencion "pascal" es obsoleta y que hay que usar una equivalente. ¿No es la misma que stdcall?

Por sierto, la única vez que vi que se usa la convencion __fastcall es en C++Builder de Borland en los eventeos de la VCL. ¿Hay algun otro lado donde se use? O es que crearon una convencion solo por Borland jaja.

389
C/C++ / Re: Necesito Ayuda Para Pillar Un Error
« en: Martes 8 de Mayo de 2007, 23:59 »
Código: Text
  1.  
  2. int main (int n){
  3.    int v1[100], v2[100];
  4.  
  5.    printf("Ingrese el largo del vector no mayor a 100\n");
  6.  
  7.  

Eso haría que no tengas que usar punteros.

390
ASM (Ensamblador) / Re: Ayuda Urgente
« en: Martes 8 de Mayo de 2007, 21:33 »
Por sierto que el programa está escrito para DOS.
Los ScreenSavers para Windows son simples ejecutables para Windows a las que se le cambia la extencion EXE por SCR.
Si tu programa fuera para windows, bastaría con que le cambies la extencion por scr.

391
La taberna del BIT / Re: Muerte Del Mouse
« en: Lunes 7 de Mayo de 2007, 21:47 »
Cita de: "Angel38"
Sigo con la duda, no se ve el teclado cuando estan moviendo los dedos. No se si esten usando el teclado escondidos a mi parecer eso es lo que hacen.

Tambien la forma en que lo estan usando me parece poco convencional, pero en fin en este mundo se ve de todo.
Jaja, Para que se tiene que ver el teclado?
Pueden mostrarte un teclado, pero que este esté desenchufado y el que esten usando esté escondido.  :alien:
O sea, engañar no cuesta nada.

392
Pascal / Re: Motrar El Nombre De Un Tipo De Dato
« en: Domingo 6 de Mayo de 2007, 01:14 »
¿Que compilador estas usando?
Si usas Turbo Pascal no se puede hacer esto:
Código: Text
  1.  
  2. WriteLn('Resultado:', MiFuncion(i));
  3. V[MiFuncion(i), 5] := 8; //esto tampoco funciona
  4.  
  5.  
Tienes que hacer:
Código: Text
  1.  
  2. nResultado := MiFucnion(i);
  3. Writeln('Resultado: ', nResultado);
  4. nIndice := MiFuncion(i);
  5. V[nIndice, 5] := 8;
  6.  
  7.  

393
La taberna del BIT / Re: Muerte Del Mouse
« en: Sábado 5 de Mayo de 2007, 21:20 »
Por sierto, respecto al teclado, SI ESTÁ.
Es deslizable y está abajo del escitorio junto con el ratón, aparece al principio del video cuando la nena enchufa el bluetooth.

394
Hardware / Re: Controlador De Sonido????
« en: Viernes 4 de Mayo de 2007, 23:02 »
Citar
Los controladores los baje de la pagina de Compaq, PERO, el controlador de audio no es compatible. he buscado por toda la web y aun sin resultados.
Te bajaste los que son del Windows Vista o XP?

395
Pascal / Re: Problema Para Finalizar El Ciclo For
« en: Viernes 4 de Mayo de 2007, 21:38 »
Trata  de marcar bien los bloques begin end.
Código: Text
  1.  
  2. for i:=1 to 5 do
  3. begin
  4.    Writeln ('ingrese otro valor para saber si es maximo o minimo');
  5.    Readln (B);
  6.    if b > max then
  7.    begin
  8.       max := b;
  9.       c := c+1;
  10.    end else
  11.    if b<min then
  12.    begin
  13.       min := b;
  14.       f := f+1;
  15.    end;
  16. end;
  17.  
  18.  

por sierto, el bloque if, else if, else no lleva el ; salgo al final
Código: Text
  1.  
  2. if a then
  3. begin
  4.    ...
  5. end else
  6. if b then
  7. begin
  8.     ...
  9. end else
  10. begin
  11.    ...
  12. end;
  13.  
  14.  
tambien he visto que lo hacen:
Código: Text
  1.  
  2. if a then
  3. begin
  4.    ...
  5. end
  6. else if b then
  7. begin
  8.     ...
  9. end
  10. else
  11. begin
  12.    ...
  13. end;
  14.  
  15.  
Yo siempre us'e esta ultima, pero cuando vi la primera, resulta mas comoda ya que tenes menos posibilidad de equivocarte.

396
Pascal / Re: Orientacion Con Operaciones De Matrices
« en: Viernes 4 de Mayo de 2007, 21:28 »
Suma los campos de la primera fila
Código: Text
  1.  
  2. var
  3.    v: array[1..10, 1..10] of Integer;
  4.    i: Integer;
  5.    Suma: Integer;
  6. begin
  7.   for i:=1  to 10  do
  8.   begin
  9.      Suma := Suma  + v[1,i];
  10.   end;
  11. end.
  12.  
  13.  
suma todos los campos
Código: Text
  1.  
  2.  for i:=1  to 10  do
  3.     for j:=1 to 10 do
  4.        Suma := Suma  + v[j,i];
  5.  
  6.  

397
La taberna del BIT / Re: Muerte Del Mouse
« en: Viernes 4 de Mayo de 2007, 01:03 »
¿Se acuerdan del "raton invertido" el Trackball?
Ya no están de moda B) Me acuerdo que venía uno Microsoft, creo que era para jugar Age of Empires, jajaj.

398
ASM (Ensamblador) / Obfuscación De Código
« en: Jueves 3 de Mayo de 2007, 21:16 »
Leyendo un ebook sobre Reversing me topé con una duda.
Existen 2 tipos de desensambladores, creo que eran recursivos (Olly, IDA, PEBrowser) y otros creo lineales como Softice.
Existen así disintas técnicas para engañarlos y hacer que desensamblen mal.

Por ejemplo este código:
Código: Text
  1.  
  2.   jmp after
  3.   db 0x0f
  4. after:
  5.   mov  eax, [var]
  6.   push  eax
  7.   call    function
  8.  
  9.  

OllyDbg, al ser recursivo, desensambla perfectamente bien ese codigo. (Claro está que hay trucos no mucho mas complicados que ese que lo logran engañar.)
Pero en el caso de Softice, interpreta el codigo como:
Código: Text
  1.  
  2.   jmp    dir1
  3.   jmp    dir2
  4.   xlat
  5.   INVALID
  6.   jmp   far[eax+24]
  7.   pushad
  8.  
  9.  

Ahora la duda que me surge.... ¿Como es que el CPU nunca se confunde? (Me refiero ctambien a  técnicas que engañan hasta a IDA y Olly)

399
La taberna del BIT / Re: A Los Amantes Del Tango
« en: Jueves 3 de Mayo de 2007, 00:20 »
Citar
Adios Nonino es de alto nivel eh!
Adios Nonino, Verano Porteño, Caida del Angel, Fuga Misterio. Hay uno mas que me encanta pero no me acuerdo el nombre Tango Fugata?. Lo toca el celista Yo Yo Ma en su dico The Soul of Tango (Celo de solo y acordeon de bajo, espectacular)
Si me preguntan, algunos de  los temas de Piazzolla suenan bien a SOLO con Piano, Guitarra o Acordeon.
Y cualqier tema suena bien con un cuarteto  formado por Violin, Piano, Guitarra (por lo general es la semiacustica, o de Jazz) y Acordeon. Esa mezcla es espectacular. :alien:

400
La taberna del BIT / Re: A Los Amantes Del Tango
« en: Jueves 3 de Mayo de 2007, 00:13 »
Letra de que tango es la que mas le gusta? Y si dicen porque, se llevan doble puntuacion. ;)
http://hjg.com.ar/tangos/

Me gusta "Si Soy Así" de Gardel pero no por la letra, sino por la musica, tengo una partitura de adaptacion para Guitarra del tema y suena muy bien.
Edito: No es de Gardel pero este si la canta.
Música: Francisco Lomuto
Letra: Antonio Botta

Páginas: 1 ... 14 15 [16] 17 18 ... 77