Página 56 de 59

Re: Construyendo un 8088

Publicado: 11 Abr 2020, 23:05
por DistWave
alvaroalea escribió: 11 Abr 2020, 13:53 ¿no tendreis una imagen del floppy por ahi para probar?
https://www.dropbox.com/s/uoxpsvv4pag98 ... 1.zip?dl=0
alvaroalea escribió: 11 Abr 2020, 13:53 Estoy intentando arrancar desde HDD, pero la controladora que tengo tiene el ide en el puerto 320 y aun estoy investigando, porque la bios XTIDE solo busca en el 300 y en el 0...
La XTIDE se puede configurar con una utilidad y seleccionar qué puerto controla, se llama XTIDECFG

Re: Construyendo un 8088

Publicado: 12 Abr 2020, 11:50
por Ben-kenobi
Alguien sabe si existe caja para este proyecto o dieño stl para imprimir?

Re: Construyendo un 8088

Publicado: 15 Abr 2020, 00:11
por Ben-kenobi
Pregunta .

¿Esta placa es compatible con el nec v20 a 16hz o solo hasta el 10hz?

Re: Construyendo un 8088

Publicado: 20 Abr 2020, 21:28
por spark2k06
Ben-kenobi escribió: 12 Abr 2020, 11:50 Alguien sabe si existe caja para este proyecto o dieño stl para imprimir?
Yo no he visto ningún diseño.

Re: Construyendo un 8088

Publicado: 20 Abr 2020, 21:30
por spark2k06
Ben-kenobi escribió: 15 Abr 2020, 00:11 Pregunta .

¿Esta placa es compatible con el nec v20 a 16hz o solo hasta el 10hz?
Por compatibilidad sí, pero con el diseño de esta placa basada en el Faraday que yo sepa el micro no se puede poner a trabajar a mas de 9.55Mhz.

Re: Construyendo un 8088

Publicado: 21 Abr 2020, 08:55
por Ben-kenobi
Ok , lo digo por que el 16mhz es mucho mas barato que el de 10 .
Por pedirlo.

Re: Construyendo un 8088

Publicado: 14 May 2020, 08:16
por spark2k06
spark2k06 escribió: 23 Dic 2019, 07:19 He hecho una nueva corrección en la BIOS 0.9.7 de poca importancia. El caso es que con la tarjeta de RTC ausente también se mostraban y permitía llevar a cabo comandos de actualización de hora y fecha del RTC cuando evidentemente no servirían de nada, por tanto los oculto cuando éste se encuentra ausente:

Aquí tenéis disponible el fichero bios097.rom para su actualización con la aplicación uFLASH.

Aquí tenéis disponible los últimos fuentes hasta que Sergey decida hacer un merge en su repositorio oficial.
He actualizado uFLASH para dar soporte de timeout, lo cual permite el intercambio en caliente de la mitad de memoria que se va a programar, usando el switch correspondiente de la placa:



También he dejado disponibles los fuentes con los cambios en mi mi repositorio.

Re: Construyendo un 8088

Publicado: 16 May 2020, 09:55
por spark2k06
Una de las mejoras que quiero hacer en el software de uFLASH es poder grabar una imagen de 64Kb (o incluso más), actualmente el límite está en unos 61Kb debido al uso de la función malloc que asigna un buffer dentro del mismo segmento de datos:

Código: Seleccionar todo

	if ((buf = (unsigned char *) calloc (*rom_size, 1)) == NULL) {
		printf("ERROR: Failed to allocate %u bytes for input buffer: %s.\n",
		       *rom_size, strerror(errno));
		exit(5);
	}
Si se trata de asignar más memoria con este método provoca fallo y no se lleva a cabo. He intentado usar la función halloc disponible en Watcom C junto con un puntero tipo far*, parece que sí se asigna la memoria pero no estoy convencido de que lo haya hecho bien... no tengo muy claro cómo el programa selecciona el segmento y offsets adecuados para su gestión. Además hay otro problema, me interesa que después se pueda leer un fichero de 64Kb (o más) y guardarlo en dicho buffer pero la función fread parece que no acepta punteros de tipo far*. La cuestión es, alguien conoce un método que me pueda mostrar con un ejemplo que cargue un fichero de 64Kb o más y lo guarde en memoria en diferentes segmentos y se pueda acceder a éstos sin problema en un programa de MS-DOS de 16 bits que corre en un 8088? Por más que trato de buscar en Internet no encuentro nada.

Por cierto, la opción de ir cargando desde el fichero en bloques menores para almacenar en memoria no me interesa utilizar, quiero seguir conservando la posibilidad de hacer cambio en caliente de la mitad de memoria a flashear, y una vez hecho el cambio no es posible hacer llamadas a la BIOS (las lecturas de disco la hacen) y debe estar todo precargado en memoria.

Re: Construyendo un 8088

Publicado: 16 May 2020, 18:17
por alvaroalea
Y digo yo... asi pensando en voz alta, y sin tener ni pajolera idea idea:
el problema de que no te da mas de 61Kb de memoria es por la segmentacion, no encuentra un trozo de memoria suficientemente grande, pero si deberia dejarte reservar 2 trozos de 32Kb simultaneos ¿no? cargas a la vez medio fichero en cada uno, y luego cuando grabas, como esta todo en memoria no necesitas la bios.

Re: Construyendo un 8088

Publicado: 16 May 2020, 19:36
por spark2k06
alvaroalea escribió: 16 May 2020, 18:17 Y digo yo... asi pensando en voz alta, y sin tener ni pajolera idea idea:
el problema de que no te da mas de 61Kb de memoria es por la segmentacion, no encuentra un trozo de memoria suficientemente grande, pero si deberia dejarte reservar 2 trozos de 32Kb simultaneos ¿no? cargas a la vez medio fichero en cada uno, y luego cuando grabas, como esta todo en memoria no necesitas la bios.
Tampoco funciona así:

Código: Seleccionar todo

	if ((buf1 = calloc (32768, 1)) == NULL) {	
		printf("ERROR: Failed to allocate %lu bytes for input buffer 1: %s.\n",
		       32768, strerror(errno));
		exit(5);
	}
	
	if ((buf2 = calloc (32768, 1)) == NULL) {	
		printf("ERROR: Failed to allocate %lu bytes for input buffer 2: %s.\n",
		       32768, strerror(errno));
		exit(5);
	}
Resultado:

Código: Seleccionar todo

ERROR: Failed to allocate 32768 bytes for input buffer 2: No error