• Martes 25 de Febrero de 2025, 17:06

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 - Eternal Idol

Páginas: 1 ... 52 53 [54] 55 56 ... 205
1326
ASM (Ensamblador) / Re: Interceptar Interrupciones
« en: Domingo 25 de Mayo de 2008, 12:14 »
Cita de: "BAJA"
Ya leí las recomendaciones que dan antes de exponer uno algun comentario en el foro, debo decir que siempre dan miedo, entiendo porque las hacen, pero igual dan miedo, siente uno que lo van a bloquear de una vez. Luego, es cierto que llegue aqui debido a algo que no logro hacer, y es de hecho por una tarea que me asignaron, PERO que no busco que me la hagan, de hecho ni voy mencionar de que se trata, pero si necesito ver si me pueden a clarar la duda.

Pese a las mismas, que poca gente lee, se hace todo lo que ahi se prohibe.

Cita de: "BAJA"
Tambien he usado la funcion 14H de DOS( si no me equivoco), para la configuracion del CHIP

Esta interrupcion es de la BIOS, no de MS-DOS. Y el puerto no tiene nada que ver, estas mezclando cosas.

Interupciones (esto esta en la KB): http://www.ctyme.com/intr/int.htm

Cita de: "BAJA"
Entonces con lo que se me hace un enredo es el vector de interrupciones, hasta donde entiendo son 256, desde la posicion real de memoria 00H hasta FFH. En la informacion que he encontrado tengo INT OCH para el COM1 e INT14H para manejo serial, es me tiene completamente confuso si esta 14H es del DOS o del BIOS, tambien no se si es en la OCH donde debo poner el segmente y el offset de mi rutina o es en la 14H.

Eso dependera de lo que quieras hacer realmente, esto es la 0Ch, es llamada por el UART no por un programa, de http://www.ctyme.com/intr/rb-0055.htm:
IRQ4 - SERIAL COMMUNICATIONS (COM1)

Desc: Automatically asserted by the UART when COM1 needs attention, if the UART has been programmed to generate interrupts


Cita de: "BAJA"
Luego, algo que lei en el libro de Peter Abel, que me imagino hay gente aqui familiarizada con el, detallan las interrupciones a partir de la 40[0]H, y ahi si es cierto que me perdi.

Yo no al menos, estos temas son arcaicos, nadie trabaja en 16 bits y MS-DOS salvo que sean tareas escolares.

La IDT en modo real es un array de DWORDs de 256 elementos. Si queres acceder a la interrupcion 10h entonces tenes que multiplicar por 4 y sumar al offset del inicio de la IDT. IDT_Offset + int_to_hook * 4.

Mas y mejor info: http://en.wikipedia.org/wiki/Interrupt_descriptor_table

Cita de: "BAJA"
No se si a la hora de que cambie el segmento y el offset de la interrupcion, ya no voy a apoder acceder a los registros del COM1 a traves del puerto 3F8H, aunque estoy casi seguero que de igual manera los voy acceder por ahi, ya que eso no deberia cambiar.

El puerto es independiente.

1327
C/C++ / Re: C Ficheros Lectura Escritura
« en: Domingo 25 de Mayo de 2008, 09:50 »
Depuralo, lee el error que tira el compilador:
Null pointer assignment

1329
C/C++ / Re: Liberar Memoria Localizada En Una Dll
« en: Viernes 23 de Mayo de 2008, 15:19 »
De nadas, lo mejor igual es seguir usando malloc/free o new/delete y que solo la DLL se encargue de su memoria.

1330
C/C++ / Re: Liberar Memoria Localizada En Una Dll
« en: Viernes 23 de Mayo de 2008, 14:50 »
El problema es que el HEAP usado es diferente. Cada libreria CRT (C Run Time) suele llamar a HeapCreate al iniciarse y su malloc usa ese HEAP devuelto. Para comprobarlo podes hacer una prueba como esta:

En tu DLL, reservar con HeapAlloc y para el HEAP usas GetProcessHeap asi no usas un HEAP privado sino el del proceso por defecto. Ej.

Código: Text
  1.  
  2. char *mem = (char*)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY /*no hace falta usar ZeroMemory a mano*/, size);
  3.  
  4.  

En tu programa, liberas con HeapFree y obviamente el mismo HEAP anterior. Ej.

Código: Text
  1.  
  2. HeapFree(GetProcessHeap(), 0, mem);
  3.  
  4.  

1331
C/C++ / Re: Apagar El ordenador con un programa en C
« en: Jueves 22 de Mayo de 2008, 22:56 »
Esa version no trae el SDK, aca tenes la solucion:

How to: Use Visual C++ Express Edition with the Microsoft Platform SDK.

1332
C++ Builder / Re: Archivos De Texto En Builder.
« en: Jueves 22 de Mayo de 2008, 22:13 »
fachamix, no funcion asi ni mucho menos.

De fopen:
b Open in binary (untranslated) mode; translations involving carriage-return and linefeed characters are suppressed.

t
Open in text (translated) mode. In this mode, CTRL+Z is interpreted as an end-of-file character on input. In files opened for reading/writing with "a+", fopen checks for a CTRL+Z at the end of the file and removes it, if possible. This is done because using fseek and ftell to move within a file that ends with a CTRL+Z, may cause fseek to behave improperly near the end of the file.

Also, in text mode, carriage return–linefeed combinations are translated into single linefeeds on input, and linefeed characters are translated to carriage return–linefeed combinations on output. When a Unicode stream-I/O function operates in text mode (the default), the source or destination stream is assumed to be a sequence of multibyte characters. Therefore, the Unicode stream-input functions convert multibyte characters to wide characters (as if by a call to the mbtowc function). For the same reason, the Unicode stream-output functions convert wide characters to multibyte characters (as if by a call to the wctomb function).

Cuando usas binary escribis exactamente lo que le pasas a fwrite, t hace las "traducciones" descriptas arriba.

1333
C/C++ / Re: De Un .exe A Programa Fuente
« en: Jueves 22 de Mayo de 2008, 19:42 »
No se puede. Lo mas util que podes hacer es desensamblarlo pero obviamente necesitas conocimientos de assembly para entenderlo y no es el codigo fuente.

1334
C++ Builder / Re: Archivos De Texto En Builder.
« en: Jueves 22 de Mayo de 2008, 11:10 »
fopen, fwrite, fread, fclose.

http://www.cplusplus.com/reference/clibrary/cstdio/

Si el usuario va a ver la informacion desde tu aplicacion entonces la podes guardar como se te de la gana. Sino tenes que usar un formato de archivo existente (ya que no queres .txt) como HTML por ejemplo.

1335
Visual C++ / Re: Wmi En Vsual C++
« en: Jueves 22 de Mayo de 2008, 09:33 »
wmi c++ en Google.

1336
C/C++ / Re: Apagar El ordenador con un programa en C
« en: Jueves 22 de Mayo de 2008, 08:10 »
Cita de: "ymabreu"
Cita de: "Pope"
Este es el codigo pa apagar el pc , pero esta sacado del visual c++, no se si valdra pa otros compiladores

#include <windows.h>

BOOL Apagar()
{
.... 
 
Hola.
Quisiera hacer esto en C++.net 2005. He utilizado la opción de crear un programa ANCI  C++ pero no encuentro el include windows.h... alguna sugerencia?
¿Es la version Express por casualidad?

1337
C/C++ / Re: quiero reiniciar windows con c++
« en: Jueves 22 de Mayo de 2008, 08:09 »
La funcion de la API de Windows es ExitWindowsEx.

Ese truco de win.com es obsoleto y el programa shutdown solo esta disponible desde XP en adelante.

1338
C++ Builder / Re: No Admite Stl String
« en: Miércoles 21 de Mayo de 2008, 09:23 »
No, el tema es muy simple, vos querias hacer algo, usar la clase string de la STL (STANDARD) y lo que terminaste haciendo es crearte otro problema al usar una clase no standard de Borland.

Que este tipo no lo entienda es SU problema, y que traslade los problemas de su vida a este foro tambien lo es.

Hasta aca llegamos y por favor no confundan censura con moderacion.

1339
ASM (Ensamblador) / Re: Ejemplo De Programa Booteable
« en: Miércoles 21 de Mayo de 2008, 09:22 »
No problem  B)

1340
ASM (Ensamblador) / Re: Ejemplo De Programa Booteable
« en: Martes 20 de Mayo de 2008, 22:06 »
De nada pero el problema esta de tu lado. Ese codigo ensambla perfectamente usando una version de MASM de 16 bits.

1341
ASM (Ensamblador) / Re: Ejemplo De Programa Booteable
« en: Martes 20 de Mayo de 2008, 18:56 »
Directo de este hilo Como bootear una maquina.

Código: Text
  1.  
  2. .186
  3. .model tiny
  4.  
  5. Codigo segment 'code'
  6.  
  7. reset equ DB 0EAh, 0h, 0h, 0FFh, 0FFh
  8.  
  9. IFDEF LOADER
  10.  org 07C00h
  11. ELSEIFNDEF
  12.  org 0100h
  13. ENDIF
  14.  
  15. main:
  16.  IFDEF LOADER
  17.    mov ax, 0FFFFh
  18.    mov ds, ax
  19.  ENDIF
  20.  
  21.  mov ax, cs
  22.  mov ds, ax
  23.    
  24.  mov si, offset msg
  25.  call prints
  26.  call getchar
  27.  
  28.  IFDEF LOADER
  29.    reset
  30.  ELSEIFNDEF
  31.    call exit
  32.  ENDIF
  33.  
  34. exit :
  35.   mov ah, 4Ch
  36.  int 21h
  37.  
  38. putchar:
  39.  pusha
  40.    mov ah, 0Eh
  41.    xor bh, bh
  42.    int 10h
  43.  popa
  44. ret
  45.  
  46. prints:
  47.  prints_bucle:
  48.  lodsb
  49.  cmp al, 0
  50.  jz prints_fin
  51.  call putchar
  52.  jmp prints_bucle
  53.  prints_fin:
  54. ret
  55.  
  56. getchar:
  57.  xor ah, ah
  58.  int 16h
  59. ret
  60.      
  61. msg db &#34;Presione una tecla para continuar&#34;, 0
  62.  
  63. Codigo ends
  64.  
  65. End Main
  66.  
  67.  

1342
C/C++ / Re: Un Cable
« en: Martes 20 de Mayo de 2008, 08:12 »
No se hacen tareas.

1343
C/C++ / Re: Compiladores
« en: Martes 20 de Mayo de 2008, 08:11 »
El termino que buscas es IDE y tenes el KDevelop por ejemplo.

1344
C++ Builder / Re: No Admite Stl String
« en: Martes 20 de Mayo de 2008, 08:09 »
Cita de: "el_shanky"
Ni hablar! pero tmb hay mucho idiota que no sabe usarlo
Esta claro, cuando se decantan por soluciones obtusas no queda ninguna duda.

1345
Visual C++ / Re: Leyes De Morgan
« en: Lunes 19 de Mayo de 2008, 23:58 »
Mejor lee esto:
http://en.wikipedia.org/wiki/De_Morgan's_laws

not (P and Q) = (not P) or (not Q)
not (P or Q) = (not P) and (not Q)

a ) ( !(x<5) && !(y>=7) ) =  (!(x<5 || y>=7))

1346
Visual C++ / Re: Leyes De Morgan
« en: Lunes 19 de Mayo de 2008, 22:22 »
¿Tenes alguna duda en particular? Esto que parece ser una tarea escolar es muy simple de resolver ...

1347
C/C++ / Re: Alguien Que Me Yude Con Unas Cosillas Basicas.
« en: Lunes 19 de Mayo de 2008, 22:16 »
Esto es una tarea.

1348
C++ Builder / Re: No Admite Stl String
« en: Lunes 19 de Mayo de 2008, 21:41 »
Cita de: "el_shanky"
las maravillas del software propietario...
Si, evidentemente algunos son basura.

1349
C/C++ / Re: Pasar Cadenas Como Referencia
« en: Lunes 19 de Mayo de 2008, 15:42 »
Si, mientras no lo modifiques no hay problema, es una cadena literal. Mas info:
http://www.zator.com/Cpp/E3_2_3f.htm

1350
Software / Re: Programa Para Copiar Una Pelicula
« en: Domingo 18 de Mayo de 2008, 21:42 »
Cita de: "mycrosystem-ard"
Yo utilizo el "DVD Decypter"
Por favor antes de responder mira la fecha del hilo y sus mensajes.

Páginas: 1 ... 52 53 [54] 55 56 ... 205