title: Cinta de cassette de IBM
text: # Cinta de cassette de IBM
  
  En la computadora personal IBM original y en la PCjr de IBM, se proporcionó una interfaz para permitir el uso de una grabadora de casete compacta para cargar y guardar datos y programas. De hecho, hasta que la PC se descontinuó en 1987, se ofreció un Modelo 104 que era un 5150 de IBM sin una unidad de disquete.
  
  Era común que los usuarios de computadoras domésticas de la época, como Apple II, Commodore 64 y BBC Micro, usaran cintas de casete para el almacenamiento si no podían permitirse una unidad de disquete, y en muchos casos había una amplia gama de software comercial disponible en cinta. Sin embargo, este no fue el caso con la PC de IBM: muy pocos se enviaron sin al menos una unidad de disquete y, aparte de una cinta de diagnóstico disponible de IBM, parece que nunca se vendió software en cinta. Una PC IBM con solo una grabadora de casete externa para almacenamiento solo podría usar el ROM BASIC incorporado como su sistema operativo, que soportaba operaciones de casete. IBM PC DOS no tenía soporte para cinta de casete.
  
  El PCjr de IBM rara vez se vendía sin una unidad de disquete, pero también tenía dos ranuras para cartuchos de ROM en la parte frontal de la unidad, una opción mucho más conveniente y confiable para cargar software.
  
  No se desarrolló ningún mercado para la distribución comercial de productos en cinta de casete y la interfaz de casete se dejó caer en el IBM XT posterior.
  
  ## Utilizando desde software
  
  Las rutinas de llamada de interrupción del BIOS 0x15 se documentaron en el manual de referencia técnica que activaría y desactivaría el motor de casete, y leería o escribiría datos. Los datos se escriben con una sección de entrada y se formatearon en bloques de 256 bytes con un CRC de 2 bytes. Los programadores también podrían operar el relé de casete escribiendo a su dirección de E/S. El casete, el disco y las versiones avanzadas de IBM BASIC incluían declaraciones para operaciones de casete, pero estas características solo funcionaban si la máquina tenía un puerto de casete.
  
  ## Formato de datos
  
  La velocidad de transferencia de datos fue de 1000 a 2000 bits por segundo, en comparación con los 250 kilobits por segundo de la unidad de disco. La referencia técnica para el IBM PC 5150 especifica que la rutina WRITE-BLOCK enciende el motor de la unidad de casete y transforma cada byte en bits. Un (1) bit corresponde a un período de temporizador de 1.0 ms, (0) bit corresponde a 0.5 ms que resulta en una velocidad de grabación de 1000 - 2000 bit/s. Se escriben los primeros 256 bytes con "11111111". Un bit de sincronización "0". Un byte de sincronización de 0x16. Se escriben bloques de datos de 256 bytes y un CRC de 2 bytes hasta que se transfieran todos los datos.
  
  ## Conector pinout
  
  La PC IBM utilizó un conector DIN hembra de 5 pines (el mismo que el conector del teclado) para el puerto de casete:
  
  Pinout:
  
     * Pin 1: MOTOR CONTROL COMMON
     * Pin 2: GND
     * Pin 3: MOTOR CONTROL (6 V/1 A) RELAY
     * Pin 4: DATA-IN (500 nA con 13V a 1000-2000 baudios)
     * Pin 5: DATA-OUT (250 µA puenteable ya sea en 0.68 V ("AUX") o 75 mV ("MIC"))
  
  Control de motor: 8255A puerto 0x61, Bit 3: 0 = on, 1 = apagado.
  
  