hola, bueno yo estaba con el proyecto de un boot disk (en A), ya lo hice, el "sistemita" es un pequeño conjunto de rutinas basicas bios de tiempo, deteccion de unidades y reinicio del cpu, resulta que ahora necesito implementar esto en el disco duro, inicialmente yo asumia que iba a ser lo mismo que el anterior con la diferencia de indicarle al programa que escribe en la unidad que en lugar de usar la unidad 0 usara la 80h pero no me funcionó, por que será?, que debo cambiar, entiendase que en Diskette ya trabaja bien, adjunto el codigo que uso para escribir en diskette:
#include <bios.h>
#include <stdio.h>
void main(int argc, *char argv[] ) {
FILE *ptr_file_in;
unsigned char buffer[512];
int jairou= atoi(argv[2]);
int jairos= atoi(argv[3]);
if( (ptr_file_in = fopen(argv[1], "rb") ) == NULL) {
printf("Error loading file\n");
exit(0); }
fread(&buffer, 512, 1, ptr_file_in);
while( biosdisk(3, jairou, 0, 0, jairos, 1, buffer) );
/*biosdisk(cmd, drive, head, track, sector, Nsectors, buffer)*/
fclose(ptr_file_in); }
/*Funcionamiento del programa wrt2dsc nombrearchivo unidad sector */