← Todas las máquinas

Olivetti · M

Olivetti M10

1983 · Arquitectura: 80C85

Portátil de 8 bits de 1983 con 80C85, RAM con batería, BASIC residente y LCD de 240 × 64. Funciona con el motor CoreMach.

ExperimentalImplementada en BluMach

EXPERIMENTAL: necesita una versión de BluMach compilada con CoreMach y la ROM de sistema local de 32 KB en roms/machines/olivetti_m10/. No se emulan el lector de códigos de barras, el módem ni el aviso de batería baja. Las opciones se eligen al crear la máquina; Configuración no las cambia.

Olivetti M10. Fotografía
Foto: Museo Nazionale Scienza e Tecnologia Leonardo da Vinci · CC BY-SA 4.0 · Ver el original

Historia

Olivetti presentó el M10 en 1983 como una herramienta personal que cabía en un maletín: funcionaba con cuatro pilas AA, guardaba programas y textos en una RAM de 8 a 32 KB alimentada por batería y traía en ROM un menú con agenda, editor de textos, comunicaciones y Microsoft BASIC. El diseño se atribuye a Perry A. King y Antonio Macchi Cassia. No es compatible con el IBM PC: el procesador es un OKI 80C85 de 8 bits, la pantalla es un LCD inclinable de 240 × 64 puntos y el almacenamiento externo era el casete.

Lo fabricó Kyocera, que también construía el Tandy TRS-80 Model 100 y una versión para NEC, probablemente el PC-8201; MAME lo trata como una variante del Kyotronic 85. Comparten origen, pero no identidad: carcasa, placa, teclado, juego de caracteres y ROM son distintos. MCmicrocomputer lo comparó con el Model 100 en febrero de 1984. El M10 europeo, sin módem, se vendía con teclado italiano, francés, alemán o británico; el M10 MODEM estadounidense llevaba un módem de 300 bit/s y una ROM propia que no se ha conservado.

En BluMach, la placa del M10 está escrita para el motor CoreMach a partir del manual de servicio y se ejecuta en su propia ventana.

Hardware

Procesador
OKI MSM80C85A at 2.4576 MHz (4.9152 MHz crystal)
Memoria
8, 16, 24 or 32 KB battery-backed RAM in 8 KB modules; 32 KB system ROM
Vídeo
Tilting 240 × 64 dot LCD, 40 × 8 characters, ten HD44102 drivers
Reloj
NEC uPD1990AC calendar clock, running while switched off
Interfaces
RS-232C (IM6402), Centronics parallel, cassette with remote motor control, bar-code reader, 40-pin system bus
Teclado
73 keys; Italian, French, German or British layout by jumpers
Sonido
Buzzer driven by the 81C55 timer
Alimentación
Four AA cells or 6 V DC; automatic power-off after 10 idle minutes

Clasificación del catálogo

Formato
Portátil
Movilidad
Portable
Tecnología de pantalla
LCD
Color de pantalla
Monocroma

Investigación

Esta ficha separa los datos documentados del hardware, el comportamiento observado en el firmware original y la fidelidad actual de la emulación en BluMach.

Redactada en inglés y traducida automáticamente.

Arquitectura y memoria

Evidencia: hardware documentado o confirmado

CPU y bus

OKI MSM80C85A, compatible con el 8085, a 2,4576 MHz (CLK de un cristal de 4,9152 MHz). Bus de datos de 8 bits multiplexado con las direcciones bajas; no hay controlador de interrupciones, DMA ni controlador de teclado de PC.

Memoria

ROM de sistema de 32 KB en 0000h-7FFFh; RAM desde FFFFh hacia abajo en módulos de 8 KB (E000h, C000h, A000h, 8000h). Un banco de ROM opcional de 32 KB ocupa la misma ventana y no se emula. Las direcciones vacías devuelven FFh (es una suposición).

Vídeo

LCD de 240 × 64 puntos, 40 columnas por 8 líneas, con diez controladores HD44102 seleccionados desde el 81C55 en F0h-FFh. BluMach lo muestra en escalas enteras con rejilla, sombra y contraste opcionales; los colores son aproximados.

Teclado y ratón

73 teclas en una matriz de nueve filas con un diodo por tecla, explorada por el 81C55 y leída en E0h-EFh. Las teclas del ordenador se asignan por posición; BLOQ MAYÚS se enclava como el mecanismo original.

Serie y paralelo

RS-232C con un IM6402 en C0h-DFh y su reloj desde el temporizador del 81C55; Centronics con los datos en el puerto A, STROBE en el bit 1 de E0h y BUSY en PC2; casete por SOD y SID con el motor en el bit 3 de E0h; zumbador por PB5 y el temporizador.

Reloj y NVRAM

NEC uPD1990AC: la hora sigue corriendo con la máquina apagada; su salida TP llega a RST 7.5 cada 3,9 ms. BluMach guarda el reloj y la RAM en state/ dentro de la carpeta de la máquina.

Banco de jumpers

Los puentes J1-J4 eligen el idioma del teclado y se leen en PC4-PC5 del 81C55: italiano, francés, alemán o británico. Se eligen al crear la máquina.

Firmware analizado

Primeros 32 KB de un volcado local, con el CRC32 F0E8447A y el SHA-1 que MAME declara para m10rom.m12. Una copia de VirtualT cambia dos bytes, lo que encaja con un parche del siglo; no se usa. La ROM no se distribuye.

Estado de la emulación

Evidencia: estado actual de BluMach; no describe necesariamente el circuito original

Procedencia de la implementación

Modelo de placa de CoreMach escrito desde el manual de servicio, el esquema de Kyocera y las hojas de datos de cada circuito. MAME se consultó solo como fuente secundaria para el orden de los controladores del LCD, los bits de la UART y la patilla de SLCT; no se usa su código. Hay una nota de ingeniería pública en inglés.

Mandos de pantalla

El mando de contraste del lateral derecho se reproduce en Ver › Contraste. Acción reúne pausa, reinicio, encendido tras el apagado automático, sonido, puerto serie, casete e impresora.

Comprobado

Con la ROM real se comprobaron el menú y BASIC con los bytes libres que da la guía para 8, 16, 24 y 32 KB; la RAM y el reloj entre sesiones; el apagado tras diez minutos sin uso; BEEP y SOUND; SAVE y LOAD por «COM:» a 9600 bit/s; CSAVE y CLOAD en cinta, incluido un WAV de 11025 Hz; y LPRINT y LLIST.

Pendiente o aproximado

El tiempo se calcula por instrucción, no por ciclo de bus. El puerto serie va por caracteres, sin BREAK ni RTS, DTR y CTS. La señal hacia la cinta es cuadrada. SLCT en PC1 y los umbrales de la cinta son supuestos. Falta comprobar una cinta grabada en un M10 real y el tono de BEEP frente a la máquina.

Ingeniería

Esta memoria pública explica cómo las evidencias se convirtieron en una implementación del emulador, incluidos los fallos, compromisos, pruebas y criterios de sustitución.

La memoria está disponible actualmente en inglés.

Leer la nota de ingeniería

Fuentes