French CII's Mitra-15 in SIMH. Work in Progress

Aug 27, 2026 09:27 PM - 3 hours ago 1
image https://ajovomultja.hu/mitra-15

A Mitra-15 Simulator for SIMH

This is simply a preliminary version. For now, my codification compiles, but it is still not a existent Mitra-15 simulator; rather, it is simply a tentative effort. Many acknowledgment to Pascal Chour for the very useful archiving disposable connected his website: https://www.pascalchour.fr/ressources/cii/mitra15.htm

As my C is rusty (pun is intended) I started pinch an existing SDS 940 simulator for SIMH and slow modified it towards Mitra-15's characteristics.

The Mitra-15 is simply a microcomputer that features absorbing concepts, specified arsenic the expertise to programme input/output peripherals utilizing microcode, alternatively of utilizing an outer system specified arsenic DMA. https://en.wikipedia.org/wiki/Mitra_15

The Mitra-15 was a 16-bit minicomputer developed by CII (Compagnie Internationale move l'Informatique) successful the early 1970s. It was wide utilized successful business automation, technological computing, education, and subject applications. I ne'er programmed connected Mitra-15, but I learned CS connected a CII 10070 and later I worked astatine France Telecom which had telephone exchanges piloted pinch the Mitra family.

Although it was erstwhile wide successful France, very small package and archiving has survived. This task contributes to the preservation of this important portion of computing history.

This Mitra-15 simulator is intended to yet include:

- System and optional instructions - Extensive comments describing the original hardware behavior - SIMH console support - Memory management - Interrupt, accelerated interrupt, suspensions and trap systems * printer * analogic interface * punched_tape * DRI fixed disk * sagem fixed disk * paper reader * magnetic portion reader - Various I/O devices, but I deficiency archiving for galore of those peripherals: * asynchronous channels * synchronous channels * accelerated transmission multiplexed * accelerated transmission ADM (no thought what it is) * IOPs (if it's not the aforesaid arsenic asynchronous channels).

To this time I did:

  • search for and analyzed the fewer remaining documents (see /doc folder).
  • create a moving SIMH situation for SIMH (deposit/examine/run/break/etc)
  • create a complete instruction decoder for each instruction and addressing mode
  • create codification for communal Mitra and CII devices
  • create a convincing (not tested) codification for RD and WD instructions for elemental connection pinch devices specified arsenic ASR33 aliases statement printer.
  • create a convincing (not tested) codification for DRI disks (UK's Data Recording Instrument) that uses the suspension system, the CII invention that intends astatine a akin extremity arsenic modern DMA.
  • create a trial program.
  • test the branch instructions successful RP (immediate successful modern parlance) addressing mode, truthful astatine slightest this portion should beryllium correct.
  • I person besides group retired to reconstruct CII's MTR (Real-Time Monitor) from a hexadecimal dump recovered successful a PDF file; however, arsenic the OCR output is abysmal, I person to visually verify each azygous byte. This will apt beryllium the only portion of original CII codification against which my simulator is tested, arsenic everything other will person to beryllium inferred from the documentation. It is truthful important that this trial beryllium successful.
  • It's not useful but I person besides created a rudimentary assembler (not tested).

On the agelong word I person plans to larboard RSX280 (RSX-11 clone) to the Mitra. Z80's BC and DE are akin to L and G registers, IX is an scale registry arsenic Mitra's X, A and HL lucifer to A and E. Main problems: Mitra has little registers, little addressing modes than the Z80, and it lacks a conception of a stack, which makes managing reentrancy complicated.

  • GCC aliases Clang
  • Make
  • Linux (tested)
  • A caller type of openSIMH

Within the SIMH monitor, you tin past load memory, analyse registers, and execute Mitra-15 programs.

Many acknowledgment to:

  • The SIMH developers for creating and maintaining the simulator

  • Everyone who has contributed to keeping the history of French computing live but chiefly Pascal Chour https://www.pascalchour.fr/ressources/cii/mitra15.htm

More