A Quick Guide to Using the 1904 Emulators
-----------------------------------------

1904S.exe is an ICL 1900 hardware emulator for West Gorton type machines (1904S/1904A/1903T/1904E,F/1905E,F),
which will need a suitable Executive (E6RM or EWG3) and will run various Operating Systems - GEORGE 3,
GEORGE 2, MAXIMOP, etc., or programs just under manual executive

1905.exe is an ICL 1900 hardware emulator for West Gorton type machines (1904/1905/1909), which will need a
suitable Executive (E4BM or E6RM) and will run programs under manual executive, and possibly GEORGE 1.

1901A.exe is an ICL 1900 hardware emulator for Stevenage machine 1901A, a very basic machine without an
operators' console, controlled by lights and switches under Executive E1HS.

The systems as issued has been initialised and configured to run suitable Executives. It should be noted that
any of these systema, although basic setup has been done, further setupmay be required for tailored fully
functional systems.

The zip file (em1900.zip) should have been unpacked into folder C:\em1900, any other location will require
the shortcuts to be adjusted.

The tree created should look like:-

   C:\em1900
             \bin              - emulator programs (not present, a separate download is required)
             \data             - basic peripheral (*TR/*TP/*LP/*CR/*CP/*GP) files
                  \binary      - some useful binary programs in card image format
                  \execs       - executives E1HS and E4BM in bootable card format
                  \setup-info  - files used to configure the system (for reference)
             \discs            - for *DA (EDS8/30/60/200) files
             \drums            - for *DR/*HD (196x/2815) files
             \fds              - for *FD (Bryant 2B) files
             \formatloops      - Lineprinter format loop files
             \logs             - System logs, including console hard copy
             \tapes            - for MT library

Note: for Windows 10 users, after the programs have been downloaded and installed into .\bin, the following
action should be taken for each of the .exe files:-

   Right-click and select properties
   Select the compatibility tab
   Tick override high DPI scaling and select System (Enhanced) in the associated dropdown box
   Clock apply and ok

This is a temporary fix for a window sizing problem that we have found only under Windows 10 - it is not required
for Win7, Win8 or WinXP. We are looking into what has changed for Win10.

Files directly under \em1904s are:-

   1901a_MC0382.ini  - System definition file, for 1901A machine 385 (defines 'hardware' the configuration to emulator)
   1901A-385         - Shortcut to start 1901A emulator, machine 385
   1904s_MC0621.ini  - System definition file, for 1904S machine 621 (defines 'hardware' the configuration to emulator)
   1904S-621         - Shortcut to start 1904S emulator, machine 621
   1905_MC0111.ini   - System definition file, for 1905  machine 111 (defines 'hardware' the configuration to emulator)
   1905-111          - Shortcut to start 1905  emulator, machine 111
   IT1938-6          - Shortcut to start TTY emulator on interrogating typewriter channel (for m/c 111)
   TW7071-1          - Shortcut to start TTY emulator on scanner channel 1 (for m/c 621)
   TW7071-2          - Shortcut to start TTY emulator on scanner channel 2 (for m/c 621)
   TW7071-3          - Shortcut to start TTY emulator on scanner channel 3 (for m/c 621)
   TW7071-4          - Shortcut to start TTY emulator on scanner channel 4 (for m/c 621)
   TW7071-5          - Shortcut to start TTY emulator on scanner channel 5 (for m/c 621)
   TW7071-6          - Shortcut to start TTY emulator on scanner channel 6 (for m/c 621)
   TW7086-7          - Shortcut to start Termiprinter emulator on scanner channel 7 (for m/c 621)
   TW7086-8          - Shortcut to start Termiprinter emulator on scanner channel 8 (for m/c 621)
   TW7086-9          - Shortcut to start Termiprinter emulator on scanner channel 9 (for m/c 621)
   TW7086-10         - Shortcut to start Termiprinter emulator on scanner channel 10 (for m/c 621)


Hardware Configurations
-----------------------

Processor:        1904S with H/W FP and 256KWords of store
Basic Periperals: U04 - 1916/2 (1000cps paper tape reader)
                  U09 - 1911/2 (900cpm card reader)
                  U10 - 1925/2 (110cps paper tape punch)
                  U13 - 1920/2 (100cpm card punch with binary image)
                  U14 - 1933/2 (1350lpm 120pp line printer)
                  U15 - 1933/2 (1350lpm 120pp line printer)
                  U19 - 1934/4 Graph Plotter
Communications:   U29 - 7007/2 Multiplexor with 10 lines for TTYs/Termiprinters
Magnetic Tapes:   U30 - 2504 (9-track PE 1600bpi)
                  U31 - 2504 (9-track PE 1600bpi)
                  U32 - 2504 (9-track PE 1600bpi)
                  U33 - 2504 (9-track PE 1600bpi)
                  U34 - 2504 (9-track PE 1600bpi)
                  U35 - 2504 (9-track PE 1600bpi)
Direct Access:    U40 - 2802 (EDS8), preloaded with csn *310010 (E6RM system)
                  U41 - 2802 (EDS8), preloaded with csn *310011 (E6RM exec reserve overlay, otherwise empty)
                  U42 - 2802 (EDS8), preloaded with csn *310012 (empty)
                  U43 - 2802 (EDS8), preloaded with csn *310013 (empty)
                  U44 - 2802 (EDS8), preloaded with csn *310014 (empty)
                  U45 - 2802 (EDS8)
                  U50 - 2802 (EDS8), preloaded with csn *310000 (G3 System - Exec and G3)
                  U51 - 2802 (EDS8), preloaded with csn *310001 (G3 System - Swap Residence)
                  U52 - 2802 (EDS8), preloaded with csn *310002 (G3 System - F/S Residence 3)
                  U53 - 2802 (EDS8), preloaded with csn *310003 (G3 System - F/S Residence 4)
                  U54 - 2802 (EDS8), preloaded with csn *310004 (G3 System - F/S Residence 5)
                  U55 - 2802 (EDS8)

Processor:        1905 with H/W FP and 32KWords of store
                            Mill Timer and TOD Clock
Basic Periperals: U04 - 1915/1 (300cps paper tape reader)
                  U05 - 1916/1 (1000cps paper tape reader)
                  U08 - 1925/1 (110cps paper tape punch)
                  U09 - 1925/1 (110cps paper tape punch)
                  U10 - 1934/4 (graph pPlotter
                  U12 - 1930   (1000lpm 120pp line printer)
                  U13 - 1933/2 (1350lpm 120pp line printer)
                  U15 - 1911/2 (900cpm card reader)
                  U16 - 1912/2 (300cpm card reader)
                  U18 - 1920/2 (100cpm card punch)
Communications:   U06 - 1938   (interrogating typewriter)
Magnetic Tapes:   U24 - 1974   (7-track NRZI 800/556/200bpi)
                  U25 - 1974   (7-track NRZI 800/556/200bpi)
                  U26 - 1974   (7-track NRZI 800/556/200bpi)
                  U27 - 1974   (7-track NRZI 800/556/200bpi)
                  U28 - 1974   (7-track NRZI 800/556/200bpi)
                  U29 - 1974   (7-track NRZI 800/556/200bpi)
                  U30 - 1974   (7-track NRZI 800/556/200bpi)
                  U31 - 1974   (7-track NRZI 800/556/200bpi)

Processor:        1901A with S/W FP and 4KWords of store
Basic Periperals: U03 - 2405/2 (300lpm 120pp line printer)
                  U04 - 2105/1 (300cpm card reader)
                  U06 - 1920/2 (100cpm card punch)


Running an Emulator
-------------------

Double-click on the appropriate shortcut. An operators' console window will start (along
with minimised GUI windows for peripheral control). You now need to load the Executive
and any Operating System required.

For the 1904S and 1905, the 'boot channel' will be requested. For the 1901A the Exec image
has been pre-loaded into the card reader.

For the 1904S, the boot channel is:-
  24 - E6RM from disc U40 (manual executive)
  25 - EWG3 from disc U50 (for GEORGE 3)
  26 - from MT30 (appropriate executive tape needs to be loaded first using the GUI)
  27 - from MT33 (appropriate executive tape needs to be loaded first using the GUI)

For the 1905, the boot channel is:-
  15 - from CR15 (the executive deck execs\e4bm-111-si.txt needs to be loaded first using the GUI)

Operator console control keys are:-
   TAB   - 'INPUT' button, press to be able to type
   ENTER - 'ACCEPT' button
   ESC   - 'CANCEL' button
   F1    - 'F1' button - meaning varies with executive 
   F2    - 'F2' button - meaning varies with executive 
   F3    - 'F3' button - meaning varies with executive 
   F4    - 'F4' button - meaning varies with executive 
   F5    - 'F5' button - meaning varies with executive


E6RM startup
------------

The console will prompt with:-

   LIB.NO./HOW MANY K?

The response to which is:-

   001A/256K 'accept'

The next prompt, after typing the site identification, is:-

   ANY MODIFICATIONS?

The response to which is:-

   N 'accept'   

The next prompt, after typing the executive identification, is:-

   DATE PLEASE?

Which should be answered as shown in the following example (see note below):-

   FRI12JUN87 'accept'

Followed by:-

   TIME PLEASE?

Which should be answered as shown in the following example:-

   2030 'accept'

Followed by:-

   OVERLAY DEVICE NO.?

The response to which should be:-

   40 'accept'

Followed by:-

   TRANSFER OVERLAYS?

The response to which should be:-

   N 'accept'

A list of online storage units is then typed.

After this, it is useful to type the following command:-

   'tab'RO41 'accept'         - set U41 as the reserve overlay device
                                (If you don't E6RM will nag until you do)

You are now free to load and run programs (inc. GEORGE 2 and MAXIMOP)

To shut down the emulator, preferably with no programs running, Ctrl/]


EWG3 startup
------------

The console will prompt with:-

   B/S LOADED 
   EXEC FILE ?
   G3EXEC

The response to which is:-

   G3EXEC 'accept'

NB This may give a 'not found' response, if so just repeat the response (known glitch)

The next prompt, after typing the executive and site identification, is:-

   CHANGE CORE SIZE ?

The response to which is:-

   N 'accept'   

The next prompt is:-

   DATE PLEASE?

Which should be answered as shown in the following example (see note below):-

   FRI12JUN87 'accept'

Followed by:-

   TIME PLEASE?

Which should be answered as shown in the following example:-

   2030 'accept'

This will then be followed by:-

   READY

   DA ICLKGEXDUMP
   FOUND ON UNIT   30

   DA ICLKNIBOOTEX
   FOUND ON UNIT   30

and the console left in 'input' mode, ready for the following response to load GEORE 3:-

   DA GEORGE3A 'accept'

This will then be followed by:-

   DA GEORGE3A
     OK
   LOADED

   hh.mm.ss
   SCF SYSTEM NOT RUNNING
   RESTORE?

The response to which should be:-

   N 'accept'   


This will then be followed by:-
 
   GENERATION 4 OF SYSTEM JOURNAL STARTED
   hh.mm.ss

   GEORGE MEAN TIME: nnnnnnn
   GEORGE 3 MK8.67 READY .

GEORGE 3 is now up and ready to use. Various console messages and requests will follow.

To start the MOP system:-

   'tab' MP ON,29 'accept'

TW7071/TW7086 terminals can be started and will connect with GEORGE 3. To use the terminals:-
   ESC    - 'accept' (end of input)
   Ctrl/A - Breakin (or wake up)
   Ctrl/X - Cancel

To shut down the system, preferably after allowing running job complete:-

   'tab' FN NOW 'accept'

Eventually you will get the messages:- 
   ALL USER JOBS NOW FINISHED
   :DUMPER,A0 (6) QUESTION: DO YOU REQUIRE TO DUMP?
   'tab' AN :DUMPER,A0,N'accept'
   EVERYTHING HAS FINISHED
   'F5'
   EXEC MESSAGE:-
   DELE 'accept'

After the 'OK' response, close the emulator with Ctrl/]


E4BM startup
------------

The first prompt, after typing the executive and site identification, is:-

   ANY MODIFICATIONS?

The response to which is:-

   N 'accept'   

The next prompt, after typing the executive identification, is:-

   DATE PLEASE?

Which should be answered as shown in the following example (see note below):-

   FRI12JUN87 'accept'

Followed by:-

   TIME PLEASE?

Which should be answered as shown in the following example:-

   0000 'accept'  (the system has a realtime clock, driven by the PC's clock)

Followed by:-

   CHARGING

The system is now ready to use

To shut down the emulator, preferably with no programs running, Ctrl/]


Note on dates
-------------

To keep 1900 programs and date routine happy, I run the emulator 28 years in arrears
of the current date, i.e. 2015 is 1987. Bu using 28 years, the day/dtae/month
match the current date.


Useful Manuals (available from website icl1900.co.uk)
-----------------------------------------------------

The manuals listed below are a selection of those available on the 1900 web site (www.icl1900.co.uk)
and probably amongst the most useful when getting started with the emulator.

   TP4156 - 1901 Operating with Handswitches
   TP4167 - 1904, 1905, 1906, and 1907 Console Operating
   TP4403 - 1903T to 1904S Operating
   TP4345 - Operating Systems GEORGE 3 and 4
   TP4438 - GEORGE 3 and 4 Operations Management
   TP4421 - Basic Peripherals
   TP4425 - Basic and Commercial Utilities
   TP4397 - Magnetic Tape
   TP4424 - Magnetic Tape Sorting
   TP4385 - Direct Access
   TP4411 - Direct Access Sorting
   TP4405 - UDAS Utilities
   TP4412 - Central Processors
   TP4431 - Compiling Systems
   TP4322 - PLAN Reference Manual
   TP4426 - COBOL Compilers
   TP4427 - COBOL
   TP4261 - FORTRAN
   TP4269 - Extended FORTRAN
   TP3340 - Algol: Language


7-Track Magnetic Tapes
----------------------

00775020 - PLAN compilers #XPLG and #XPLH and subroutine library S-RS
00775021 - COBOL compiler #XEKB and subroutine library S-CP
00775022 - Algol 60 compiler #XALM and subroutine library SRA3
03600040 - mt copy of E4BM/111 (can be loaded using BT74)
04650000 - general library tape (contains a lot of useful software)


9-Track Magnetic Tapes
----------------------

00015155 - GEO3DUMPTAPE - Increment 1
00015156 - GEO3DUMPTAPE - Increment 2
00015157 - GEO3DUMPTAPE - Increment 3
03600040 - E6RM boot tape for m/c621 (pre-installed to disc)
03600040 - EWG3 boot tape for m/c621 (pre-installed to disc)
04650000 - general library tape (contains a lot of useful software)
04671000 - ICLKG3SYSTEM
04671001 - ICLKG3ADDSYS
04671002 - ICLKGEOCHAPS
04671003 - ICLKGEOCHAPS
04671012 - ICLKGEOCHAPS (updated)
04671013 - ICLKGEOCHAPS (updated)
04672012 - ICLKGSNED867 (update binary issue)
