Differences between revisions 1 and 13 (spanning 12 versions)
Revision 1 as of 2015-01-04 13:26:19
Size: 6019
Editor: asbesto
Comment:
Revision 13 as of 2015-01-11 15:41:40
Size: 8647
Editor: asbesto
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
== ORIGINAL TETRIS EMULATION HOWTO ==

''by Emiliano, editing and test by Ono Sendai & Asbesto''

Ingredienti originali

 * COMPUTER ELEKTRONIKA 60M (clone sovietico del DEC PDP-11)
 * TERMINALE 15ИЭ-00-013 (clone sovietico del DEC VT52)
 * SISTEMA OPERATIVO FOBOS (clone sovietico del DEC RT-11)

Noi invece useremo

 - Debian GNU/Linux 7 "wheezy"
 - emulatore PDP-11 (disponibile su SIMH)
 - emulatore 15ИЭ-00-013 (disponibile su MAME/MESS)
 - una immagine disco di sistema RT-11
 - e ovviamente una immagine del disco con il Tetris originale :)

=== Premessa / Disclaimer ===

 - Le software house occidentali hanno ricavato miliardi da tetris senza offrire al suo autore Aleksej Pažitnov neanche un cicchetto di vodka.

 - I compagni ingegneri dell'ex URSS hanno spudoratamente copiato l'hardware sul quale sara' sviluppato Tetris dai sistemi della ex Digital Equipment Corporation.

 - Sembra dunque che in tutta questa storia tutti se ne siano allegramente stracatafottuti di diritti d'autore, segreti industriali e quant'altro.

In un'ottica di accurata ricostruzione filologica, faremo anche noi lo stesso, fornendo tutto cio' che occorre senza farci troppi problemi.

=== FASE 1: SIMH ===

serve installare simh-pdp11. si fa cosi':
= ORIGINAL TETRIS EMULATION HOWTO =

Versione Italiana di questo howto: [[OriginalTetrisHowto/IT]]

by MusIF / MIAI, Italy

 * Museo dell'Informatica Funzionante, Palazzolo Acreide (SR) - http://museo.freaknet.org
 * Museo Interattivo dell'Archeologia Informatica, Cosenza (CS) - http://verdebinario.org

''Original version by Emiliano; translation by Stefania; editing, debugging and testing by Stefania, Ono Sendai & Asbesto''

'''''If you have the BIG IRON (PDP-11/23, Elektronika-60, the cyrillic terminal etc.) maybe you are interested in running TETRIS directly on the hardware! So, please check [[OriginalTetrisHardwareHowto]] ;)'''''

<<TableOfContents(4)>>

== Intro ==

Original flavours:

 * ELEKTRONIKA 60M COMPUTER (DEC PDP-11/23 sovietic clone)
 * 15ИЭ-00-013 TERMINAL (DEC VT52 sovietic clone)
 * FOBOS OPERATING SYSTEM (DEC RT-11 sovietic clone)

We will use instead:

 * Debian GNU/Linux 7 "wheezy" (or Ubuntu, Linux Mint and some other distros)
 * SIMH PDP-11 emulator
 * MESS 15ИЭ-00-013 emulator
 * RT-11 disk image
 * and obviously an original disk image with TETRIS

=== Disclaimer ===

 * Western software houses earned millions from Tetris without offering a single dollar, nor a vodka glass to Aleksej Pažitnov, the original Tetris author.
 * Ex USSR Soviet Engineers, have shamelessly copied the hardware in which Tetris will be developed from ex Digital Equipment Corportation systems.
 * It seems that in the whole story everybody did not care at ALL about copyrights, industrial secrets, rights in general.

Looking forward to give you a perfect historical reconstruction, we will act the same, giving you everything needed without asking any problems or what else.
 
=== PHASE 1: SIMH ===

We must install simh-pdp11. Here it is how to do it:
Line 42: Line 53:
la compilazione sputera' l'eseguibile del simulatore pdp-11 in "BIN/pdp11". Possiamo installarlo in /usr/local/bin/ da bravi installatori precisini. The compiling will save the pdp-11 emulator executable in "BIN/pdp11". We can now install it into /usr/local/bin/ acting like perfect unix installers.
Line 48: Line 59:
ora possiamo installare il sistema adoperativo RT-11 per l'hardware emulato.

ecco la mia immagine disco con RT-11 gia' installato e pronto all'uso:
Now we can install the RT-11 operative system for the emulated hardware.
Here it is our RT-11 disk image already installed and ready to use:
Line 56: Line 66:
ed ecco l'immagine del disco con i giochini sovietici per FOBOS, che girano senza problemi anche su RT-11. And here it is the soviet games disk image for FOBOS. They perfectly run on RT-11 too :)
Line 62: Line 72:
prepariamo una conf che fa il boot del nuovo sisthema RT-11 dal disco rl0 e aggancia al media rl1 l'immagine disco coi giochini sovieti: So, let’s prepare a config for booting the new RT-11 system from rl0 disk and attaching to the media a rl1 disk image with the soviet games:
Line 72: Line 82:
; GIOCHINI SOVIETI ; SOVIETO GAMES
Line 74: Line 84:
; ACCESSO TELNET DA TERMINALE SOVIETO ; TELNET ACCESS FROM DA SOVIETO TERMINAL
Line 83: Line 93:
a questo punto, sul versante SIMH abbiamo tutto pronto. teniamolo in caldo.

=== FASE 2: THE MESS MESS ===

In pratica anna certa dentro MAME e' confluito il codice del progetto MESS, che emula una serie di computer e ferraglia di vario genere, tra cui (nelle ultime release) alcuni vecchi computer dell'ex blocco Est.

E' qui che occorre fermarsi un attimo, uscire di casa e acquistare un bottiglione di vodka liscia, da sorseggiare per sopportare le tante piccole cagate che tenteranno di ostacolare la nostra strada verso il socialismo videoludico.

E dunque, ci serve una versione nuova di MESS, che supporta anche il terminale dell'Elektronika 60M: il ficherrimo "15ИЭ-00-013", clone del DEC VT52 con gli indispensabili caratteri cirillici integrati.

Inutile dire che la comoda versione di MESS presente negli archivi Debian NON VA BENE. Quindi, ci tocca scaricare e compilare i sorgenti di MAME/MESS.
And now everything is ready on the SIMH side. Let’s keep this hot for later!

=== PHASE 2: THE MESS MESS ===


Well, what to say…. Suddenly MESS project code has been marged inside MAME. It emulates a lot of old stuff hardware, like (in the last release) some of the Eastern side old computers.
This points need a stop. We have to go outside, buy a vodka bottle, and drink it, while the rest of the damn installation will try to bring us to the socialist video fun.
So, we need a new MESS version, that supports the Elektronika 60M terminal: the astonishing Elektronika 60M, DEC VT52 clone, with the indispensable cyrillic encoding inside.
It’s quite obvious saying that the easy and comfortable MESS version present in Debian archives DOES NOT WORK for us. So, we need to download and compile the MAME/MESS sources.
Line 99: Line 108:
scompattiamo l'archivio zip
We unzip the ZIP archive and…..
Line 105: Line 113:
otteniamo... un altro archivio zip ( LOL???? o_O ), vabbe'... we get ANOTHER ZIP archive…… LOL ;)
Line 110: Line 118:
  A questo punto dobbiamo sapere che MESS non compilera', anche se siamo in possesso delle librerie di sviluppo richieste, che sembrano essere
SDL, SDL_TTF, automoc (e forse altre cose che trovo gia' installate su questo sistema, impossibile saperlo dalla tanto prolissa quanto INUTILE documentazione di MAME/MESS)

installiamo ordunque invano le seguenti cose

Let’s finally install the following stuff:
{{{
sudo aptitude install libsdl2-dev libsdl2-ttf-dev libsdl-ttf2.0-dev automoc
}}}

Now we defintely compile MESS
{{{
cd mame0156
make TARGET=mess
}}}

and… after biblical time needed to compile our fantastillions sources…..

{{{
sudo cp mess /usr/local/bin/
}}}

Pant.

And when the vodka seems to be over….. a last thing is needed, soviet terminal firmwares. They are here:

{{{
wget http://astio.ciotoni.net/tetris/ie15.zip
wget http://astio.ciotoni.net/tetris/ie15_keyboard.zip
}}}

''NOTE: there's no need to unzip those files: MESS will look inside them automagically ;)''

=== Differences between distros ===

We tested all this stuff on various distros, so here we describe some small differences in the MESS installation procedure.

==== Debian 7 ====

We also have to know that MESS won’t compile, also if we have all the requested develop libraries, that seems to be:

SDL, SDL_TTF, automoc (and maybe also other stuff that are already built on this system. But it’s impossible for me to know from the huge and such USELESS MAME/MESS documentation….)

So, let’s install these stuff:
Line 120: Line 163:
la compilazione lamentera' comunque stupidi problemi con SDL_TTF, ragion per cui passeremo preventivamente a installare SDL_TTF e SDL (non si sa mai) A MANINA. In any case compiling these will show a lot of stupid warnings and problems with SDL_TTF,that’s why we will install SDL_TTF and SDL
(never say never, it may help) HANDY.
Line 126: Line 170:
}}}

avanti un altro

{{{
Line 136: Line 176:
ora possiamo finalmente compilare MESS

{{{
cd mame0156
make TARGET=mess
}}}

e dopo i tempi biblici richiesti per compilare VENTUORDICIMILA sorgenti

{{{
sudo cp mess /usr/local/bin/
}}}

Pant.

Quando abbiamo quasi finito la vodka ci serve un'ultima cosa, i firmware del terminale sovietico. Stanno qui:

{{{
wget http://astio.ciotoni.net/tetris/15ie_plus_keyboard_roms.zip && unzip 15ie_plus_keyboard_roms.zip
}}}



************ FASE 3: TETRIS :) ************


ora possiamo finalmente lanciare l'emulatore del pdp11 con SIMH
==== Ubuntu 14.04 Desktop ====

You need to install everything on the Debian list. On Ubuntu 14.04 if you did not install the server stuff, you’d need also to install the following libs (at least Stefania had to):

{{{
sudo apt-get install libfontconfig1-dev
sudo apt-get install g++
}}}

==== Linux Mint Mate edition ====

You need to install everything from the debian list, plus this one:

{{{
sudo apt-get install libsdl2-ttf-dev
}}}

That's it! :)

=== PHASE 3: TETRIS ===

Finally we can launch the PDP11 emulator with SIMH
Line 168: Line 203:
e, subito dopo, l'emulatore del terminale 15ИЭ-00-013 con MESS and suddenly the 15ИЭ-00-013 emulator trough MESS
Line 174: Line 209:
al prompt di RT-11 possiamo eseguire Tetris prestidigitando At the RT-11 prompt we can now execute Tetris magicallydigiting:
Line 180: Line 215:
e giocare finalmente all'unico vero Tetris!

si gioca col tastierino numerico: tasti 7, 8, 9 e 5 :)

alla fine di una partita, dopo aver inserito il nome per la classifica

 - per giocare di nuovo: D ("DA")
 - per uscire: N ("NIET")


PS:

la lista degli altri giochi presenti sul disco sovietico si ottiene digitando in RT-11
And finally play at the original, one and only Tetris!

You can play with the numeric keypad, key 7, 8, 9 and 5.

At the end of a match, after writing your name in the top ranking:

 * To play again: D ("DA")
 * To leave: N ("NIET")


Another little tip:

To show the list of other games present in the soviet disc, just digit in RT-11:

{{{
Line 195: Line 231:

== RIFERIMENTI ==
}}}

== 15ИЭ-00-013 TERMINAL SETUP ==

The BEEP that the terminal emulation make is somehow annoying. Here are some hint for the emulation author, about how to configure it:

(source: http://forums.bannister.org//ubbthreads.php?ubb=showflat&Number=97827)

{{{
To enter setup mode, press PrtScr. Cursor should appear in status line at the top. There are 20 settings you can change, in 6 groups (I-VI). Group I controls serial port speed (leave at 9600), groups II-V control 16 setup bits, and group VI is realtime clock. There is no NVRAM. To change a setting, press keypad '*'. Left and right cursor keys move between fields. PrtScr exits setup mode.

Setup bits are:

Group II
- 'cursor shift' [not sure what that does]
- keyboard autorepeat; 0: off, 1: on
- n/a
- cursor type; 0: type 1, 1: type 2 [not sure what that's supposed to do either]

Group III
- margin beep (at position 72); 0: off, 1: on
- key click; 0: on, 1: off
- current command set; 0: set 1, 1: set 2 [set 1 is completely custom, set 2 is VT52 compatible
- xon/xoff [??]

Group IV
- n/a
- autowrap (only in command set 2); 0: off, 1: on
- auto CR/LF on keyboard input (only in command set 2); 0: off, 1: on
- n/a

Group V
- parity; 0: even, 1: odd
- parity check; 0: off, 1: on
- auto CR/LF [?? on line input]; 0: off, 1: on
- status line; 0: displayed, 1: not displayed

}}}

== REFERRALS ==

ORIGINAL TETRIS EMULATION HOWTO

Versione Italiana di questo howto: OriginalTetrisHowto/IT

by MusIF / MIAI, Italy

Original version by Emiliano; translation by Stefania; editing, debugging and testing by Stefania, Ono Sendai & Asbesto

If you have the BIG IRON (PDP-11/23, Elektronika-60, the cyrillic terminal etc.) maybe you are interested in running TETRIS directly on the hardware! So, please check OriginalTetrisHardwareHowto ;)

Intro

Original flavours:

  • ELEKTRONIKA 60M COMPUTER (DEC PDP-11/23 sovietic clone)
  • 15ИЭ-00-013 TERMINAL (DEC VT52 sovietic clone)
  • FOBOS OPERATING SYSTEM (DEC RT-11 sovietic clone)

We will use instead:

  • Debian GNU/Linux 7 "wheezy" (or Ubuntu, Linux Mint and some other distros)
  • SIMH PDP-11 emulator
  • MESS 15ИЭ-00-013 emulator
  • RT-11 disk image
  • and obviously an original disk image with TETRIS

Disclaimer

  • Western software houses earned millions from Tetris without offering a single dollar, nor a vodka glass to Aleksej Pažitnov, the original Tetris author.
  • Ex USSR Soviet Engineers, have shamelessly copied the hardware in which Tetris will be developed from ex Digital Equipment Corportation systems.
  • It seems that in the whole story everybody did not care at ALL about copyrights, industrial secrets, rights in general.

Looking forward to give you a perfect historical reconstruction, we will act the same, giving you everything needed without asking any problems or what else.

PHASE 1: SIMH

We must install simh-pdp11. Here it is how to do it:

wget http://simh.trailing-edge.com/sources/simhv39-0.zip
unzip simhv39-0.zip -d simhv39-0
cd simhv39-0
make pdp11

The compiling will save the pdp-11 emulator executable in "BIN/pdp11". We can now install it into /usr/local/bin/ acting like perfect unix installers.

sudo cp BIN/pdp11 /usr/local/bin/

Now we can install the RT-11 operative system for the emulated hardware. Here it is our RT-11 disk image already installed and ready to use:

wget http://astio.ciotoni.net/tetris/rl0.dsk

And here it is the soviet games disk image for FOBOS. They perfectly run on RT-11 too :)

wget http://astio.ciotoni.net/tetris/games.dsk

So, let’s prepare a config for booting the new RT-11 system from rl0 disk and attaching to the media a rl1 disk image with the soviet games:

cat > rt11.ini <<__EOF
set cpu 11/23+ 256K
set rl0 writeenabled
set rl0 rl02
attach rl0 rl0.dsk
set rl0 badblock
; SOVIETO GAMES
attach rl1 games.dsk
; TELNET ACCESS FROM DA SOVIETO TERMINAL
set throttle 100k
set console telnet=2323
set console pchar=37777777777
boot rl0
quit
__EOF

And now everything is ready on the SIMH side. Let’s keep this hot for later!

PHASE 2: THE MESS MESS

Well, what to say…. Suddenly MESS project code has been marged inside MAME. It emulates a lot of old stuff hardware, like (in the last release) some of the Eastern side old computers. This points need a stop. We have to go outside, buy a vodka bottle, and drink it, while the rest of the damn installation will try to bring us to the socialist video fun. So, we need a new MESS version, that supports the Elektronika 60M terminal: the astonishing Elektronika 60M, DEC VT52 clone, with the indispensable cyrillic encoding inside. It’s quite obvious saying that the easy and comfortable MESS version present in Debian archives DOES NOT WORK for us. So, we need to download and compile the MAME/MESS sources.

wget http://emumovies.com/aarongiles/releases/mame0156s.zip

We unzip the ZIP archive and…..

unzip mame0156s.zip

we get ANOTHER ZIP archive…… LOL ;)

unzip mame.zip -d mame0156

Let’s finally install the following stuff:

sudo aptitude install libsdl2-dev libsdl2-ttf-dev libsdl-ttf2.0-dev automoc

Now we defintely compile MESS

cd mame0156
make TARGET=mess

and… after biblical time needed to compile our fantastillions sources…..

sudo cp mess /usr/local/bin/

Pant.

And when the vodka seems to be over….. a last thing is needed, soviet terminal firmwares. They are here:

wget http://astio.ciotoni.net/tetris/ie15.zip
wget http://astio.ciotoni.net/tetris/ie15_keyboard.zip

NOTE: there's no need to unzip those files: MESS will look inside them automagically ;)

Differences between distros

We tested all this stuff on various distros, so here we describe some small differences in the MESS installation procedure.

Debian 7

We also have to know that MESS won’t compile, also if we have all the requested develop libraries, that seems to be:

SDL, SDL_TTF, automoc (and maybe also other stuff that are already built on this system. But it’s impossible for me to know from the huge and such USELESS MAME/MESS documentation….)

So, let’s install these stuff:

sudo aptitude install libsdl2-dev libsdl-ttf2.0-dev automoc

In any case compiling these will show a lot of stupid warnings and problems with SDL_TTF,that’s why we will install SDL_TTF and SDL (never say never, it may help) HANDY.

wget https://www.libsdl.org/release/SDL2-2.0.3.zip
unzip SDL2-2.0.3.zip && cd SDL2-2.0.3
sudo ./configure && make && make install

wget https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-2.0.12.zip
unzip SDL2_ttf-2.0.12.zip && cd SDL2_ttf-2.0.12
sudo ./configure && make && make install

Ubuntu 14.04 Desktop

You need to install everything on the Debian list. On Ubuntu 14.04 if you did not install the server stuff, you’d need also to install the following libs (at least Stefania had to):

sudo apt-get install libfontconfig1-dev
sudo apt-get install g++

Linux Mint Mate edition

You need to install everything from the debian list, plus this one:

sudo apt-get install libsdl2-ttf-dev

That's it! :)

PHASE 3: TETRIS

Finally we can launch the PDP11 emulator with SIMH

pdp11 rt11.ini

and suddenly the 15ИЭ-00-013 emulator trough MESS

mess -bitbngr socket.localhost:2323 ie15 -rompath . -window

At the RT-11 prompt we can now execute Tetris magicallydigiting:

RUN DL1:TETRIS

And finally play at the original, one and only Tetris!

You can play with the numeric keypad, key 7, 8, 9 and 5.

At the end of a match, after writing your name in the top ranking:

  • To play again: D ("DA")
  • To leave: N ("NIET")

Another little tip:

To show the list of other games present in the soviet disc, just digit in RT-11:

DIR DL1:

15ИЭ-00-013 TERMINAL SETUP

The BEEP that the terminal emulation make is somehow annoying. Here are some hint for the emulation author, about how to configure it:

(source: http://forums.bannister.org//ubbthreads.php?ubb=showflat&Number=97827)

To enter setup mode, press PrtScr. Cursor should appear in status line at the top. There are 20 settings you can change, in 6 groups (I-VI). Group I controls serial port speed (leave at 9600), groups II-V control 16 setup bits, and group VI is realtime clock. There is no NVRAM. To change a setting, press keypad '*'. Left and right cursor keys move between fields. PrtScr exits setup mode.

Setup bits are:

Group II
- 'cursor shift' [not sure what that does]
- keyboard autorepeat; 0: off, 1: on
- n/a
- cursor type; 0: type 1, 1: type 2 [not sure what that's supposed to do either]

Group III
- margin beep (at position 72); 0: off, 1: on
- key click; 0: on, 1: off
- current command set; 0: set 1, 1: set 2 [set 1 is completely custom, set 2 is VT52 compatible
- xon/xoff [??]

Group IV
- n/a
- autowrap (only in command set 2); 0: off, 1: on
- auto CR/LF on keyboard input (only in command set 2); 0: off, 1: on
- n/a

Group V
- parity; 0: even, 1: odd
- parity check; 0: off, 1: on
- auto CR/LF [?? on line input]; 0: off, 1: on
- status line; 0: displayed, 1: not displayed

REFERRALS

OriginalTetrisHowto (last edited 2017-01-04 13:52:32 by asbesto)