¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

grxt123
Mensajes: 239
Registrado: 08 Nov 2012 10:14
Agradecimiento recibido: 14 veces

¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor grxt123 » 05 Jun 2014 08:24

Hola,
mirando la casi siempre interesante http://www.os2museum.com he visto que han puesto un artículo sobre la BIOS del IBM PC original.
Parece ser que se compiló en un sistema Intel ISIS-II y el compilador ASM86 de Intel, aunque con la versión 1.x que por ahora no han podido encontrar.

Pues nada, si alguien tiene la versión 1.x de este compilador, a compilar la BIOS a ver que pasa.

Bye.

Avatar de Usuario
ron
Mensajes: 19407
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2325 veces
Agradecimiento recibido: 2119 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor ron » 05 Jun 2014 19:21

Bueno, es interesante desde el punto de vista de la construcción del micro.- Antes de nada solo decir que M$ pegó un pelotazo criminal con IBM y jugo a su favor entre las compañías porque tenía la información = poder con el que se manipuló a muchos fabricantes de hard y soft.

Yo tenía en mis bookmarks ( marcadores ) esta web : http://www.minuszerodegrees.net/bios/bios.htm

Por lo que puedo aportar la primera versión de la BIOS data del 24/04/1981, la cual se comercializó con el IBM PC original del 12/08/1981. Luego hay una revisión del 19/10/1981 y otra más del 27/10/1982 que se tenga conocimiento en concreto.
Estas ROM contienen un bug que previene al PC de reconocer más de 544KB de RAM, pero hay alguno más -507

Según se decía en sus tiempos, la BIOS era la única pieza tecnológica pura de IBM cuando se desarrolló el PC. De hecho se patentó y se registraron los derechos de autor. De reventarla a base de bien se ocuparon los señores de Compaq y no fue hasta 1985 que empezaron a distribuir los primeros ordenadores 100 % compatibles con BIOS propia.

También se comentaba que los ingenieros del alto nivel de Compaq ( un equipo de 15 personas ) tardaron un año en desarrollar la BIOS y tuvo un costo superior al millón de dólares de la época ( una pasta ).

Para evitar demandas, Compaq hizo firmar a todos sus ingenieros una clausula y una declaración jurada antes de empezar a trabajar en la que se mentaba que ninguno de ellos había visto con anterioridad el código fuente de la BIOS de IBM.

Phoenix Technologies repetiría la hazaña de Compaq meses más tarde.

Dicho todo este chaw chaw introductorio al grano: En general son ROM de 8 KB. Si os fijáis en un IBM PC 5150 os llamará la atención encontrar los integrados de ROM con el logotipo de AMD y Motorola xD ( buscadlo en fotos si no os lo creéis ) están identificados en placa desde U29 hasta U33.

09_a.JPG


Por tanto, los primeros ensambladores de Micro$oft para X86 eran infumables debido a la inmensa cantidad de errores que tenían y es de imaginar que era inviable para tal propósito. En pocas palabras, una autentica basura.

Así que tiraron del propio fabricante de los micros y utilizaron los propios ensambladores de Intel, y como bien has dicho el ISIS-II o iRMX. Imaginad que el MDS no tenía soporte para programador de eproms, también se llegó a hablar del uso de compiladores cruzados ( toolchains o cross compilers ). En varios libros también citan a Kildall y cosas y tools del CP/M así como herramientas desarrolladas por el en su etapa en Intel.

Otras versiones dirán que se usaron varias herramientas, desde el SCPs 8086 assembler, pasando por el Micro$oft XMACRO88 e incluso el que se llego a ver comercialmente MASM ó Micro$oft MACRO Assembler for the IBM Personal Computer.

Al fin y al cabo el truco de la bios del PC fue descubrir que en la dirección FFFF -hypo está una instrución JMP que salta al inicio del códio del Power On Self Test. Supuestamente si os bajáis el código fuente de la BIOS debería dejarse compilar. Pero recordad que las tools de IBM no estaban ni terminadas ni disponibles en aquella época con lo que si intentáis hacerlo con el MASM os cascará seguramente y para ello tendréis que buscar los ya citados ISIS-II o iRMX

ibmbiossource.gif
ibmbiossource.gif (19.37 KiB) Visto 2133 veces


Código fuente de los BIOS del PC aquí: ----> http://www.iee.et.tu-dresden.de/~kc-clu ... OMBIOS.ALL

Avatar de Usuario
ron
Mensajes: 19407
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2325 veces
Agradecimiento recibido: 2119 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor ron » 05 Jun 2014 20:09

Por cierto , no conocía la web os/2 museum. Me la quedo en marcadores ya que tiene muy buena pinta.

FloppySoftware

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor FloppySoftware » 05 Jun 2014 23:12

Aquí hay info. y manuales a porrillo de Intel, de la mano de un coleccionista:

http://www.intel-vintage.info/

Qué curioso, que el lenguaje PL/M aparece por todos los lados...

Estudiante
Mensajes: 146
Registrado: 28 May 2012 20:56
Agradecimiento recibido: 8 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Estudiante » 06 Jun 2014 18:20

FloppySoftware escribió:Qué curioso, que el lenguaje PL/M aparece por todos los lados...

Más curioso es que la BIOS ya existiera mucho antes del pc....
Imagen

Avatar de Usuario
Jinks
Mensajes: 2076
Registrado: 09 Oct 2013 16:47
Agradecido : 200 veces
Agradecimiento recibido: 273 veces
Contactar:

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Jinks » 06 Jun 2014 20:47

Estudiante escribió:Más curioso es que la BIOS ya existiera mucho antes del pc....

Claro, porque esa BIOS no es para ningún PC...

Cada modelo de ordenador tiene su "BIOS" (lo pongo entre comillas porque no en todos los casos se le llama "BIOS").

De todas formas esta BIOS del CP/M creo que ni siquiera es para un ordenador, sino parte del S.O. Supongo que será el interface para unificar la manera de llamar a la auténtica BIOS (la de la ROM) en distintas máquinas o arquitecturas, o una extensión de la BIOS análoga al IBMBIO.SYS... pero eso mejor que lo digan los expertos en CP/M.

grxt123
Mensajes: 239
Registrado: 08 Nov 2012 10:14
Agradecimiento recibido: 14 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor grxt123 » 06 Jun 2014 21:42

El tema de las BIOS para IBM compatibles da para una novela. Como comenta ron Compaq hizo una BIOS compatible y en principio legal. Después aparecieron otras BIOS de otras empresas, pero creo que la más utilizada (y por goleada) es una hecha en Taiwan que más o menos modificada, fue usada por prácticamente todos los fabricantes de clónicos XTs. Fueron las basadas en la BIOS DTK/ERSO. Parece ser que el propio gobierno de Taiwan participó en el proyecto para facilitar la venta de clónicos taiwanses del IBM PC/XT.

Podeis ver el código original y una super modificación en:

http://www.phatcode.net/downloads.php?id=101


Según parece IBM demandó a la empresa y llegaron a un acuerdo para quitar el código "copiado". Claro que el acuerdo llegó tarde y además las BIOS basadas en ésta no dejaron de aparecer...
Si os fijais en las BIOS de clones de la página que ha comentado ron http://www.minuszerodegrees.net, hay varias versiones de esta BIOS.
Bye.

tolaemon
Mensajes: 205
Registrado: 30 Jul 2011 21:09
Agradecido : 11 veces
Agradecimiento recibido: 3 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor tolaemon » 06 Jun 2014 23:18

¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Perdonadme que sea un poco quisquilloso, pero tal como pasó con otros muchos equipos de la época, muy probablemente la BIOS del IBM PC se escribiera en assembler, y traducir un fichero de assembler a código máquina no es compilar. El término correcto seria ensamblar. Se habla de compilación a la conversión de un programa escrito en un lenguaje de alto nivel a código máquina, y el assembler realmente no es un lenguaje de alto nivel. El assembler es un listado de operaciones de código máquina, reescritas mediante mnemónicos. Asi una instrucción de assembler se traduce siempre en una instrucción de código máquina. P.ej una instrucción de assembler como:

ld A,35h

se traduciría directamente a ( me lo invento ):

0001 0000 00110101 donde
opcode : 0001 = LD = seria el codigo de operacion
operando 1 : 0000 = registro A
operando 2 : 00110101 = 35h

La complejidad de un ensamblador es muy poca comparada con la de un compilador. Quien sabe, quizas programaron la BIOS del primer IBM PC en C, pero me parecería raro. En este caso sí que se trataría de una compilación.

No hace mucho leí la autobiografía de Steve Wozniak, y comentaba que el monitor ( algo parecido a una BIOS ) del primer Apple lo escribio a mano con papel y lápiz ( con sus 0s y 1s ) y luego lo metió a mano en una ROM supongo que con algún tipo de grabador dedicado. Con esto quiero quiero decir que considerando que el IBM PC se diseñó unos cuantos años después que el Apple I y que IBM era una gran empresa con bastantes recursos, disponer de una herramienta para generar la 1a BIOS del PC debió ser para ellos algo accesorio. Quiero decir que por entonces ya habian equipos suficientes para poder entrar el ensamblador de su BIOS, segruamente la hicieran con el sistema ISIS que indicas. La podrian haber hecho hasta con un Apple I :)

Estudiante
Mensajes: 146
Registrado: 28 May 2012 20:56
Agradecimiento recibido: 8 veces

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Estudiante » 06 Jun 2014 23:38

Rauli escribió:Claro, porque esa BIOS no es para ningún PC...

Digo que es curioso, ya que fué algo que inventó Gary Kildall. No sólo se copió el CP/M (al crear el DOS), sino que parece que también se copió el concepto de la BIOS, como tal.
The term BIOS (Basic Input/Output System) was invented by Gary Kildall[5] and first appeared in the CP/M operating system in 1975.

Rauli escribió:De todas formas esta BIOS del CP/M creo que ni siquiera es para un ordenador, sino parte del S.O.

La verdad, no tengo ni idea. Si algún experto en CP/M nos puede sacar de dudas..... Queda claro que si el pobre de Gary no se hubiera dedicado a la informática, las cosas hoy serían muy distintas.

Avatar de Usuario
Jinks
Mensajes: 2076
Registrado: 09 Oct 2013 16:47
Agradecido : 200 veces
Agradecimiento recibido: 273 veces
Contactar:

Re: ¿Cómo compiló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Jinks » 06 Jun 2014 23:48

Tolaemon escribió:Quien sabe, quizas programaron la BIOS del primer IBM PC en C, pero me parecería raro.

Fue en ensamblador, creo que el listado venía en el manual que daban con el IBM PC. Igualito de detallado que los de ahora, ¿verdad? :)

grxt123
Mensajes: 239
Registrado: 08 Nov 2012 10:14
Agradecimiento recibido: 14 veces

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor grxt123 » 07 Jun 2014 01:19

Toda la razón Tolaemon, cambiado el título. Efectívamente el código fuente de la BIOS era ensamblador, por tanto se trata de ensamblar, no compilar.
El código fuente estaba como ha comentado Rauli en los manuales del IBM PC, lo cual no implicaba que se pudiera copiar.
En cuanto a que el concepto de BIOS lo inventara Gary Kildall, no estoy seguro si es el mismo concepto (aunque sí sea el mismo nombre). Me parece que es más bien lo que sería el IBMBIO.COM del PCDOS como también comenta Rauli.

Avatar de Usuario
ron
Mensajes: 19407
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2325 veces
Agradecimiento recibido: 2119 veces

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor ron » 07 Jun 2014 07:52

-bRick

Vistos a muy bajo nivel, los microprocesadores procesan exclusivamente señales electrónicas binarias. Dar una instrucción a un microprocesador supone en realidad enviar series de unos y ceros espaciadas en el tiempo de una forma determinada. Esta secuencia de señales se denomina código máquina. El código representa normalmente datos y números e instrucciones para manipularlos. Un modo más fácil de comprender el código máquina es dando a cada instrucción un mnemónico, como por ejemplo STORE, ADD o JUMP. Esta abstracción da como resultado el ensamblador, un lenguaje de muy bajo nivel que es específico de cada microprocesador

Los lenguajes de bajo nivel permiten crear programas muy rápidos, pero que son a menudo difíciles de aprender. Más importante es el hecho de que los programas escritos en un bajo nivel son prácticamente específicos para cada procesador. Uno de los métodos inventados por los programadores para reducir y simplificar el proceso es la denominada programación con lenguaje ensamblador. Al asignar un código mnemotécnico (por lo general de tres letras) a cada comando en lenguaje máquina, es posible escribir y depurar o eliminar los errores lógicos y de datos en los programas escritos en lenguaje ensamblador, empleando para ello sólo una fracción del tiempo necesario para programar en lenguaje máquina. En el lenguaje ensamblador, cada comando mnemotécnico y sus operadores simbólicos equivalen a una instrucción de máquina.
Un programa ensamblador traduce el código fuente, una lista de códigos de operación mnemotécnicos y de operadores simbólicos, a código objeto (es decir, a lenguaje máquina) y, a continuación, ejecuta el programa. Sin embargo, el lenguaje ensamblador puede utilizarse con un solo tipo de chip de CPU o microprocesador. Los programadores, que dedicaron tanto tiempo y esfuerzo al aprendizaje de la programación de un ordenador, se veían obligados a aprender un nuevo estilo de programación cada vez que trabajaban con otra máquina. Lo que se necesitaba era un método abreviado en el que un enunciado simbólico pudiera representar una secuencia de numerosas instrucciones en lenguaje máquina, y un método que permitiera que el mismo programa pudiera ejecutarse en varios tipos de máquinas. Estas necesidades llevaron al desarrollo de lenguajes de alto nivel.

Partiendo de :

Lenguaje máquina: un programa o secuencia de instrucciones viene dado por una secuencia de códigos binarios.

Lenguaje ensamblador: secuencia lógica de sentencias pertenecientes a alguna de las siguientes clases:

­Una línea de comentario.
Una instrucción ejecutable.
Una directiva de ensamblado.

Por tanto, eso de hacer el ensamblado a mano es poco probable. La escritura en lenguaje máquina es tediosa y proclive a todo tipo de errores, el lenguaje ensamblador facilita la tarea enormemente sin perder la cercanía a la máquina, eso al menos es lo que nos enseñaban en los 80.

Entonces Si , estoy con Jordi. Vamos a ver... antes de tener una ROM en todo diseño debe haber una electrónica previa, en este caso hay que matizar lo del ensamblado, pero para ello es conveniente saber que existen los ensambladores y los macroensambladores, que básicamente lo que hacen es eso, pero cuidado una cosa es ensamblador y otra es diferenciar entre alto y bajo nivel, los ensambladores a veces requieren de un linker. Esos módulos objeto que se generan deben traducirse para generar un programa o la misma bios, que no deja de ser un programa. De hecho es más que justo necesario que una bios esté creada en código máquina o ensamblada ya que es un programa que debe tratar directamente con los registros y direcciones de la cpu, la memoria, dispositivos de E/S, etc... ya que el resultado siempre es un ejecutable muy corto y muy rápido.

Por tanto una cosa es código máquina puro y duro y otra ensamblador que es la herramienta que nos permite traducirlo a código máquina, con lo que una fuente escrita en assembler y mediante el uso del lenguaje ensamblador siempre me generará un fichero objeto que contiene código máquina ejecutable directamente por el microprocesador.

Yo no las tengo todas conmigo, es decir habría que determinar si el ensamblado se hizo a pinrel o si por el contrario utilizaron los ensambladores de intel, aunque quizá me decante por la segunda posibilidad.

El código máquina te lo encuentras en binario, a veces en decimal ( las menos ) pero sobre todo hexadecimal. 1000000 = 01000000 = 40hex = 64dec

y en el caso del IBM PC y sus herederos, basándonos en su estructura, en su juego de registros, direccionamiento de memoria y su conjunto de instrucciones básicas y operaciones lógicas creo que intel se lo montó muy bien y sacó mucho partido al 8086 y al 8088 y la estructura es fácil de entender. Los dos micros constan de dos unidades interconectadas en el mismo chip de inicio. Una es BIU y la otra EU (unidad ejecución).

La BIU es la encargada de buscar instrucciones y acceder a datos del exterior. La EU es la encargada de ejecutar las instrucciones realizando las operaciones necesarias para ello. Cuando la BIU localiza en memoria un objeto de código máquina, lo coloca en una línea de espera llamada cola de instrucciones. En el 8086 la cola tiene una longitud de seis octetos y al código en memoria se accede de dos en dos octetos. En el 8088 tiene cuatro octetos y se accede de octeto en octeto.

Por otro lado los registros de la CPU como los Registros de propósito general, el Registro Puntero de Instrucciones (EIP), el Registro de Estado o de Señalizadores (EFLAGS), los Registros de Segmento.

Sin olvidarnos de las directivas, las excepciones, la aritmética, la pila, etc... cada CPU o microprocesador es un mundo y finalmente porque esto es un rollazo, nos queda hablar del proceso de ensamblaje, que lo podemos hacer en uno, dos o más pasos.

El proceso de ensamble de un paso consiste en leer una línea de programa fuente y traducirla a lenguaje máquina cuando se trata de una instrucción, o se ejecuta si es una pseudoinstrucción. La tabla de símbolos se va construyendo a medida que se avanza en la lectura de las líneas del programa fuente. Para que el ensamblaje de un paso funcione, todos los símbolos deben estar definidos antes de emplearse. Esto es debido a que, para traducir correctamente cada instrucción, se debe conocer la dirección de cada uno de los símbolos que intervienen en ella. En otras palabras, no pueden quedar referencias pendientes porque ya no habrá otra oportunidad de resolverlas.

Tampoco podrán hacerse saltos hacia líneas posteriores. No es posible saltar hacia una línea cuya etiqueta todavía no ha sido definida. Para resolver el problema que presenta el proceso de ensamblaje de un paso, se utiliza el proceso de ensamblaje de dos pasos o fases. En la primera fase, se lee el programa fuente y se construye la tabla de símbolos. En la segunda fase, se vuelve a leer el programa fuente y se traduce totalmente ya que se conoce la totalidad de los símbolos utilizados (incluyendo las etiquetas) y las posiciones de memoria que se les han asignado. Como ya se conocen las direcciones de las etiquetas utilizadas, pueden realizarse saltos hacia adelante.

Y ahora la pedrada, a ver si alguien va a creer que un sistema operativo de disco está creado en assembler o macro assembler, de eso nada, ya están casi todos creados en lenguaje de alto nivel como el C, ahí tenéis el caso del UNIX, que está enteramente escrito en C, como el DOS de M$ que fue escrito en C aunque ciertas partes fueron hechas con macro assembler.

Avatar de Usuario
ron
Mensajes: 19407
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2325 veces
Agradecimiento recibido: 2119 veces

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor ron » 07 Jun 2014 08:07

Antes que IBM, pero bastante antes Apple tuvo que hacer la ROM de su Apple I, con posterioridad la misma Apple tuvo que hacerlo con el ][, Atari con sus 400 y 800 y Tandy con sus TRS-80

Si te das cuenta estas maquinas son anteriores al IBM PC, al igual que lo son el BBC Micro, el Vic20 y el ZX81

Todos estos micros, a excepción de aquellos que no llevan el Basic en ROM, digamos que incorporan tanto la bios, como el sistema operativo y el lenguaje de programación ( basic ) en la propia ROM y que si hacemos una comparación el IBM PC lleva prácticamente lo mismo, hasta el Basic de Microsoft. Por otro lado el caso de Sinclair que no lleva basic de Microsoft.

Entonces yo reharía la pregunta. Como metieron en las ROM de los micros anteriores al PC todo eso sin tener los propios equipos o máquinas. Muchas incorporan sistemas operativos de disco, el IBM PC además puede funcionar en Basic y con cinta de cassette. Acordaros que el pc ha mutado con el paso de los años pero en esencia aún siendo un 16 bit era más de lo mismo.

Dicho esto, nos lleva como decía a replantear la pregunta.

¿ Como programaban los fabricantes las ROM sin los propios equipos ? ... como hacía Microsoft, o la propia Sinclair para desarrollar su interprete de Basic y meterlo en la ROM del cliente junto con lo demás.... eso si es cachondo, el IBM está incluido

Avatar de Usuario
Jinks
Mensajes: 2076
Registrado: 09 Oct 2013 16:47
Agradecido : 200 veces
Agradecimiento recibido: 273 veces
Contactar:

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Jinks » 07 Jun 2014 17:20

Se supone que la BIOS o ROM para un ordenador B se desarrollaba en otra máquina anterior A, que no necesitaba tener la misma arquitectura, ni siquiera el mismo procesador, pero que al ser anterior ya contaba con herramientas de desarrollo propias y "cruzadas".

El proceso debía ser bastante pesado: Editar el código fuente en la máquina A, ensamblar (o quizás para algún sistema, compilar) en la máquina A, grabar la EPROM (conectada ya veremos cómo) a la máquina A, "enchufar" la EPROM en la máquina B, y probar la máquina B. Repetir :)

Si la máquina A era un sistema normal (de propósito general), para grabar la EPROM se conectaría el correspondiente grabador de EPROMs externamente a través de E/S. Si la máquina A era un sistema de desarrollo, debería tener un zócalo donde enchufar la EPROM, seguramente accesible desde el espacio de direcciones de la CPU.

Esto nos lleva a que la BIOS de la máquina A debería haberse desarrollado en otra máquina anterior y así sucesivamente, lo cual no puede ser llevado hasta el infinito... Pero eso lo resuelvo yo en un periquete: Si las BIOS cada vez son más grandes y complejas, al volver hacia atrás ocurre justamente lo contrario: Son más pequeñas y sencillas. Esto nos lleva a que volviendo lo suficientemente atrás, podríamos llegar a un punto donde la BIOS era tan pequeña y sencilla que sí se pudo haber codificado manualmente. No creo que sea muy descabellado teniendo en cuenta que:
  • El primer microprocesador era de 4 bits, con lo que el conjunto de instrucciones no sería muy extenso y seguramente los científicos que trabajasen con él se acabarían aprendiendo los códigos de cada instrucción.
  • Los primeros ordenadores (antes de que hubiese microprocesadores) se programaban no sólo codificando a mano, sino además cambiando los cables que conectaban las válvulas, para que se ajustasen al código generado.
Y supongo que cuando los primeros microprocesadores tampoco habría grabadores de EPROM, por lo que en cada iteración del proceso de desarrollo habría que diseñar una ROM, o tendrían un sistema "reconfigurable" (se puede hacer una ROM rudimentaria con un decodificador de direcciones y una matriz de jumpers y resistencias, cambiando un jumper se cambia un bit de la ROM).

Ni que decir tiene que no he contrastado nada de ésto, pero quiero pensar que he acertado en más de la mitad de las cosas...

Por cierto, mi opinión (muy mía) sobre Kildall no es que fuese el "inventor" de la BIOS, sino que probablemente fuese quien acuñó el término "BIOS". Eso sin quitarle el mérito por otras cosas que hizo.

Y al contrario de lo que indicaba el sentido común cuando algunos de nosotros comenzamos con la informática, las BIOS modernas están programadas en una mezcla de C y ensamblador, siendo la tendencia hacer en C todo lo que se pueda y dejar cada vez menos fragmentos en ensamblador y más cortitos (por ejemplo, hay fragmentos en ensamblador que únicamente tienen una instrucción como CLI o STI, que no tiene equivalente en C). Echad un vistazo a este fichero.

Avatar de Usuario
ron
Mensajes: 19407
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 2325 veces
Agradecimiento recibido: 2119 veces

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor ron » 07 Jun 2014 18:01

Siempre está el IPL ( Initial Program Loader ), incluso en los Altair tenías que tener declarada la ROM ó EPROM que ibas a cargar pero siempre te llevaba al IPL, lo mismo pasa con muchos ordenadores que no tienen el sistema operativo basado en Basic y en ROM.

Avatar de Usuario
Jinks
Mensajes: 2076
Registrado: 09 Oct 2013 16:47
Agradecido : 200 veces
Agradecimiento recibido: 273 veces
Contactar:

Re: ¿Cómo ensambló IBM la BIOS del IBM PC sin IBM PC?

Mensajepor Jinks » 07 Jun 2014 19:34

Últimamente se ha hablado bastante de esto: ¿Es normal que si no me identifico no pueda ver el enlace que puse en mi anteior post? (el enlace a rombios.c)


Volver a “PC & Compatibles X86”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado