I hope you enjoyed to play with minimal configuration of the computer. Now lets see how it can be launched in full configuration.
“UT-88″ computer supposed to be build step by step, starting with minimal configuration and then adding additional blocks to extend its functionality. That’s why it is a bit complicated to use.
After we run the computer in minimal configuration we can switch it to full configuration. To do this ROM with “MONITOR-F” needs to be turned on. It can be done by moving switch SW to position “1″. Also, make sure that 1Hz timer interrupts are turned off (SW to “0″ position) because they are not supported in full mode. Now we can run it by the command 7 F800.
Now we can switch PS/2 keyboard to full mode if it was in keypad mode by turning on switch SW. Also, we don’t need 7-segment indicators on the screen any more, so you can switch them off with SW.
To use all availiable memory, we can turn off ROMs used for minimal configuration (switches SW and SW to “0″ position”). In this case addressable memory will be:
0000 – DFFF – RAM
E000 – E7FF – video RAM
E800 – EFFF – video RAM double. It contains exatly the same content as video RAM because of “UT-88″ design
F400 – F7FF – RAM that is used by “MONITOR-F” for its own purposes
F800 – FFFF – ROM with “MONITOR-F” When all ROMs for “MONITOR-0″ are turned of, accessible RAM in full configuration is 56 Kbytes.
I have added additional RAM block where I put a famous “TETRIS” game. When it’s turned on by SW, it replaces the range 3000-3FFF by itself. This RAM block behaves exactly like ordirnary RAM but because it is not ROM, the game in there can be damaged if something has been written in this range when this block is turned on. If it happened turning DE1 off and on restores it. To run the game G3000 directive is used.
So to use the computer in full mode switches should be changed to the following position after the computer has been launched in “MONITOR-0″:
SW – “0” if you want to turn them off on VGA display.
SW – “0”to use PS/2 keyboard in full mode.
SW – switch to “0” after running “MONITOR-F” to free RAM in the range 0000-0FFF. Please make sure that SW is turned off before that.
SW – “1”
SW – “0”, to free RAM range 2000-23FF
SW – “1” if you want TETRIS to be preloaded in 3000-3FFFrange
SW – 1Hz timer interrupt. Must be turned of before turning off “MONITOR-0″
SW – “0”. This switch is responsible for a set of characters that is used. If “0″ a standard characters of “UT-88″ are used. It has only capital latin and cyrillyc letters. Some programs for OS CP/M use small latin characters instead of cyrillic. To make it possible to use such programs the second set of characters has been implemented. It replaces capital cyrillic characters on small latin. It can be done at any time by turning on the switch and have immidiate effect.
SW – “0”. If you put this switch in position “1″ the CPU will go to “HOLD” mode. This mode is used for debugging and to read/write memory dumps with “DE1 CONTROL PANEL”.
SW – position of this switch doesn’t matter
In the keypad mode of minimal configuration (SW is in “0″ position) only numeric keys from ’1′ to ’0′ and letter keys ‘A’, ‘B’, ‘C’, ‘D’, ‘E’ and ‘F’ are availiable. As ‘ШН’ button, KEY on DE1 board or “Tab” button can be used. “RESET” button is allocated to KEY on DE1 of “Esc” button.
In the full keyboard mode of full configuration (SW is in “1″ position) the following buttons are availiable:
To produce characters highlighted by blue, hold SHIFT button. For green – “CC” button. ‘*’ can be generated by the following combination: SHIFT + CC + “;” . The layout is not ideal, because original keyboard stays quite far from PS/2. But you can change it by yourself using project’s source code.
Russian layout, when ‘РУС’ button is pressed looks this way: