Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

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.

Mostrar Mensajes Menu

Mensajes - dj_spin0

#1
General Programadores / Gcc Y Ensamblador
25 de Octubre de 2005, 06:17:33 PM
 jajajaja

julio cabron ni en viena te dejas de visitar estos foros!!!
espero q estes follando mucho por alli :P

esto es pa un trabajo de el de periféricos pa diciembre. solo me falta esa y la carrera es mia jejej

gracias hgh. de todas formas me da igual en linux o windors :P
#2
General Programadores / Gcc Y Ensamblador
25 de Octubre de 2005, 03:29:00 PM
 jajaja

Pero Hgh aqui no se accede a ningún punto de la memoria solo se llama a una interrupcion de la bios, y en esta, llamamos a una función de ella, la 0x02 que es la de leer. Me da igual como este formada la memoria.
Pero bueno te veo bastante puesto así que confiaré en ti :P

Según tu, la solucion es pasar por las funciones del so. Pero cuales!??
Qué función te da la posibilidad de acceder a un sector y una pista del disket??

y no me vale la función biosdisk() de la libreria bios.h :P que estamos en las mismas
si alguien sabe algo...

y gracias a todos por contestar

#3
General Programadores / Gcc Y Ensamblador
25 de Octubre de 2005, 12:01:37 PM
 no. es en linux. creo que en windows habia una funcion de la libreria bios.h que lo hacia. biosdisk() creo.
Pero vamos lo estoy haciendo en linux y con el gcc.
Empiezo a pensar que haya que activar el uso de interrupciones mediante alguna función o algo así.

Si alguien sabe algo... :P
#4
General Programadores / Gcc Y Ensamblador
25 de Octubre de 2005, 11:30:35 AM
 Hola, estoy untentando hacer un programa en el que necesito acceder a ciertos sectores del disket. Para ello utilizo la función 0x02 de la interrupción 0x13 de la bios. Y por supuesto para ello hay q utilizar el ensamblador.

Lo estoy haciendo de la siguiente manera. Pero al llegar a la intrrupción me da error de segmento.

void lee(int sector,int pista)
{
   __asm__ ("movb $2, %ah");                  // pone ah <- 2 (FUNCION 2 DE LA BIOS)
   __asm__ ("movb $1, %al");                   // pone al <- 1 (Num Sectores a leer)
   __asm__ ("movb $0, %dl");                   // pone dl <- 0 (DISKETERA 0)
   __asm__ ("movb $0, %dh");                 // pone dh <- 0 (CABEZAL 0,1)
   __asm__ ("movb %0, %%ch" : : "g" (pista));   // pone ch <- pista (CILINDRO 0..79)
   __asm__ ("movb %0, %%cl" : : "g" (sector));   // pone cl <- sector (SECTOR 1..18)
   __asm__ ("int $0x13");                         // INTERRUPCION 0x13
   
}

No se si lo que estoy haciendo mal son los valores de los registros (que serian los parametros de entrada para la función de la interrupción de la bios) o si estoy usando mal las llamadas a ensamblador dentro del codigo de c.

Bueno si alguien ha hecho algo parecido o intuye cual puede ser la causa de mi fallo que por favor me diga algo
1 saludo
#5
General Programadores / Acceso a bd acces mediante c++
23 de Mayo de 2003, 02:49:09 AM
                                hola estoy haciendo un proyecto en c++ en el que tengo q guardar algunos datos en una bd. y para ir probando quiero empezar con un acces que sera facil.
Alguien sabría decirme alguna libreria o informacion de como acceder a una bd.

saludos :X9:                                
#6
General Programadores / solucionado
05 de Marzo de 2003, 07:23:17 PM
                                creo q ya lo he solucionado

tenia q meter una libreria al proyecto alleg.lib

grasias a tos por ayudar. mabis ayudao muxo.
au                                
#7
General Programadores / sigue sin funcionar
05 de Marzo de 2003, 06:54:53 PM
                                he hecho lo q me has dicho pero sigue sin funcionar
ahora pone...

Linking...
prueba.obj : error LNK2001: unresolved external symbol __imp___WinMain
Debug/ferquest1_1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

ferquest1_1.exe - 2 error(s), 0 warning(s)



el codigo del programa es este...

#include
  #include

  int main()
  {
      cout << "primer programa en allegro" << endl;
      return 0;
     
  }END_OF_MAIN()


achabo mierda mestoy desesperando
pero gracias por responder                                
#8
                                jorgito jorgito.
yo diria q no tienes ni idea de programar.  :D