|
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 - pabloreda
26
« en: Martes 27 de Febrero de 2007, 16:42 »
$ffff
27
« en: Domingo 25 de Febrero de 2007, 01:11 »
No, en serio, no podemos juzgar sin saber cual sea su fin.- si que podemos, encima que le damos una ayuda !
28
« en: Sábado 24 de Febrero de 2007, 23:15 »
hay una interrupcion que te retorna la tecla pulsada, otra es con in y out pero deverias desactivar las int justamente.
No me acuerdo que int era pero busca la del SO que uses y despues busca en el manual de tu C como llamar interrupciones.
Ahora, el que te pidio eso es medio nabo (no se si esta palabra es un regionalismo, solo espero que se entienda).
29
« en: Viernes 23 de Febrero de 2007, 13:01 »
o usando ports !!! ; Reading the harddisk using ports! ; +-------------------------------+ by qark ; ; ; This took me months to get working but I finally managed it. ; ; This code only works for the 286+ so you must detect for 8088's somewhere ; in your code. ; ; Technical Information on the ports: ; Port Read/Write Misc ; ------ ------------ ------------------------------------------------- ; 1f0 r/w data register, the bytes are written/read here ; 1f1 r error register (look these values up yourself) ; 1f2 r/w sector count, how many sectors to read/write ; 1f3 r/w sector number, the actual sector wanted ; 1f4 r/w cylinder low, cylinders is 0-1024 ; 1f5 r/w cylinder high, this makes up the rest of the 1024 ; 1f6 r/w drive/head ; bit 7 = 1 ; bit 6 = 0 ; bit 5 = 1 ; bit 4 = 0 drive 0 select ; = 1 drive 1 select ; bit 3-0 head select bits ; 1f7 r status register ; bit 7 = 1 controller is executing a command ; bit 6 = 1 drive is ready ; bit 5 = 1 write fault ; bit 4 = 1 seek complete ; bit 3 = 1 sector buffer requires servicing ; bit 2 = 1 disk data read corrected ; bit 1 = 1 index - set to 1 each revolution ; bit 0 = 1 previous command ended in an error ; 1f7 w command register ; commands: ; 50h format track ; 20h read sectors with retry ; 21h read sectors without retry ; 22h read long with retry ; 23h read long without retry ; 30h write sectors with retry ; 31h write sectors without retry ; 32h write long with retry ; 33h write long without retry ; ; Most of these should work on even non-IDE hard disks. ; This code is for reading, the code for writing is the next article. mov dx,1f6h ;Drive and head port mov al,0a0h ;Drive 0, head 0 out dx,al mov dx,1f2h ;Sector count port mov al,1 ;Read one sector out dx,al mov dx,1f3h ;Sector number port mov al,1 ;Read sector one out dx,al mov dx,1f4h ;Cylinder low port mov al,0 ;Cylinder 0 out dx,al mov dx,1f5h ;Cylinder high port mov al,0 ;The rest of the cylinder 0 out dx,al mov dx,1f7h ;Command port mov al,20h ;Read with retry. out dx,al still_going: in al,dx test al,8 ;This means the sector buffer requires ;servicing. jz still_going ;Don't continue until the sector buffer ;is ready. mov cx,512/2 ;One sector /2 mov di,offset buffer mov dx,1f0h ;Data port - data comes in and out of here. rep insw ; ------ mov ax,201h ;Read using int13h then compare buffers. mov dx,80h mov cx,1 mov bx,offset buffer2 int 13h mov cx,512 mov si,offset buffer mov di,offset buffer2 repe cmpsb jne failure mov ah,9 mov dx,offset readmsg int 21h jmp good_exit failure: mov ah,9 mov dx,offset failmsg int 21h good_exit: mov ax,4c00h ;Exit the program int 21h readmsg db 'The buffers match. Hard disk read using ports.$' failmsg db 'The buffers do not match.$' buffer db 512 dup ('V') buffer2 db 512 dup ('L') ; ; Writing to the hard disk using the ports! by qark ; +---------------------------------------+ ; ; The only differences between reading and writing using the ports is ; that 30h is sent to the command register, and instead of INSW you ; OUTSW. ; mov dx,1f6h ;Drive and head port mov al,0a0h ;Drive 0, head 0 out dx,al mov dx,1f2h ;Sector count port mov al,1 ;Write one sector out dx,al mov dx,1f3h ;Sector number port mov al,1 ;Wrote to sector one out dx,al mov dx,1f4h ;Cylinder low port mov al,0 ;Cylinder 0 out dx,al mov dx,1f5h ;Cylinder high port mov al,0 ;The rest of the cylinder 0 out dx,al mov dx,1f7h ;Command port mov al,30h ;Write with retry. out dx,al oogle: in al,dx test al,8 ;Wait for sector buffer ready. jz oogle mov cx,512/2 ;One sector /2 mov si,offset buffer mov dx,1f0h ;Data port - data comes in and out of here. rep outsw ;Send it. ; ------------ mov ax,201h ;We'll read in sector 1 using mov bx,offset buffer2 ;int13h and see if we are successful. mov cx,1 mov dx,80h int 13h mov cx,512 mov si,offset buffer mov di,offset buffer2 repe cmpsb ;Compare the buffers. jne failure mov ah,9 mov dx,offset write_msg int 21h jmp w_exit failure: mov ah,9 mov dx,offset fail int 21h w_exit: mov ax,4c00h ;Exit the program int 21h write_msg db 'Sector one written to using the ports, OH NO! there goes XP.$' fail db 'Writing using ports failed.$' buffer db 512 dup ('A') buffer2 db 512 dup ('D')
30
« en: Miércoles 21 de Febrero de 2007, 13:29 »
Bueno, funciona al final, la verdad que no se decir con precision que fue, quizas que instale el windbg y termine usando el drwatson...en fin
31
« en: Sábado 17 de Febrero de 2007, 15:53 »
mi winver dice lo mismo.... pero esta en español....si geo anda por ahi...podria decir que idioma tiene? en la que anda bien esta en ingles.
32
« en: Sábado 17 de Febrero de 2007, 15:43 »
oK, not worry
La version de wxp la manda el propiedades del MIPC.
estaria bueno saber si hace lo mismo en Vista..
33
« en: Sábado 17 de Febrero de 2007, 15:30 »
Ya lo habias cambiado para el bug anterior no ?, lo de fullscreen tenes por ahi las lineas que le modificaste, probe el OllyDbg con FullScreen y salta todo al carajo, lindo programa este Olly.
De los links la mayoria son para VC, mmm Uno hace un proxy con las dll de ddraw, pero esta medio raro, lo probe y no dejo registro..o no lo encuentro.. encima no salto.
estoy casi seguro que es WXP2002 con SP2 como dijo Geo, yo tengo el mismo.
bueno, seguire probando cada tanto, en otras maquinas anda impecable...sera de dios.
34
« en: Sábado 17 de Febrero de 2007, 15:03 »
cha graciasss..
35
« en: Sábado 17 de Febrero de 2007, 11:09 »
@eternal
Como depuro remotamente ?
36
« en: Lunes 12 de Febrero de 2007, 12:24 »
Hola Geo
De lo mas raro, estoy sospechando de loop de eventos, de todas formas como no estoy utilizando esta maquina para desarrollo, no hice muchas pruebas, pero estoy casi seguro que se trata del un "parche" ya que en un XPHome sin parches no se colgo ni una vez.
37
« en: Viernes 9 de Febrero de 2007, 19:29 »
De lo mas raro que vi...
El mismo ejecutable me esta funciondo bien..y luego mal.. y luego bien..
Se trata de un pograma compilado, el fuente esta en R4 cuando ejecuto el compilador genero los fuentes cod.asm y dat.asm, aclaro que no esta optimizado. r4win.bat genera el r4win.exe, en una maquina anda sin problemas (XP home viejo) y en otra mas nueva (debe tener todos los parches) me da error pero no siempre y sin reiniciar ni nada, probando varias veces a veces anda y a veces no.
si lo prueban confirmen el SO y como funciona o si salta..
gracias
38
« en: Jueves 1 de Febrero de 2007, 00:34 »
gracias Eternal, lo que puedas hacer todos los tutoriales de directx y eso usan C y lo necesito en asm si te interesa me pasaron una libreria ILIX, pero como hace mas de lo que necesito y estas en MASM me complica un poco si conoces otra forma de hacer lo mismo, tambien viene bien, aunque necesito si o si la memoria de video en RAM que despues la copie a VRAM En breve empiezo con la misma interface para DexOS (So similar a la XboX) o un Super DOS (full 32 bits) pregunte en el foro de FASM.. http://board.flatassembler.net/forum.php?f=3Saludos
39
« en: Miércoles 31 de Enero de 2007, 22:00 »
Hola
Estoy haciendo las funciones basicas para dibujar en pantalla.
El ejemplo que adjunto funciona, salvo que cuando salgo (con esc) tanto win98 como xp, manda un error. Envio el codigo en asm y el exe
Lo que hice fue tomar el ejemplo que viene con FASM y modificarlo para escribir en memoria y que esta memoria se copie a la pantalla
El objetivo es lograr la mayor velocidad posible
Alguna ayuda o recomendacion es bienvenida
PD: quiero ser amigo de eternal idol !!
41
« en: Miércoles 17 de Enero de 2007, 15:36 »
Una posibilidad seria generar el codigo asm en un archivo y luego ensamblar a un exe. Otra es generar directamente el exe respetando el formato que queres obtener para que sea ejecutable, grabando byte por byte cada una de las instrucciones.
42
« en: Jueves 11 de Enero de 2007, 20:27 »
Por lo que lei en el link, no evita el sistema de archivos sino que lo complica, le agrega metadata (escondido) en cada archivo.. Me parece que es distinto a lo que dice JuanK
43
« en: Jueves 11 de Enero de 2007, 20:15 »
perfecto.. ademas se me ocurre que evita el uso de extensiones ya que el atributo es esa caracteristica Cuando uno busca una foto no busca un texto !!!
Te imaginas el "explorer" de esta forma de informacion ??
44
« en: Jueves 11 de Enero de 2007, 16:59 »
Alguna otra opinion ?
45
« en: Jueves 11 de Enero de 2007, 16:28 »
Justamente un file system es un abstraccion que representa archivos, directorios, etc. sobre un disco que tiene un formato donde no existen ninguna de estas entidades.
es necesario un file system ?
46
« en: Jueves 11 de Enero de 2007, 16:12 »
lo curioso es que lo que comentas de una carpeta sola y 1500000 archivos mexclados es justamente lo que se puede hacer con el sistema de archivos y carpetas, seria bueno tratar de evitar esto...
y efectivamente el word funciona asi, con la diferencia que asigna los sectores el SO y no la aplicacion, o sea que no sabes realmente en donde esta guardado (fisicamente)
47
« en: Jueves 11 de Enero de 2007, 14:56 »
creo que no entiendo esta parte
" la ausencia de directorios ya es un caos y ni hablar de archivos ..."
podrias poner un ejemplo de como seria el caos ?
48
« en: Jueves 11 de Enero de 2007, 13:45 »
Que opinan de estos dos conceptos ? son necesarios ? Conocen algun sistema que NO utilice el sistema de archivos y carpetas ? La Palm tiene un registro o algo asi... Win tiene dos, ( registro y disco )
49
« en: Viernes 1 de Diciembre de 2006, 15:25 »
Lo bueno de los estandares es que hay muchos para elegir
50
« en: Jueves 30 de Noviembre de 2006, 14:18 »
La clave esta en capturar el teclado sin interrumpir la ejecucion cuando no hay tecla presionada... algo asi como primero preguntar si se toco una tecla y, si es asi, capturarla y actuar en consecuencia. Es justamente lo lindo de programar juegos...que tenes que pensar que todo va a correr siempre a la vez.
|
|
|