Differences between revisions 10 and 11
Revision 10 as of 2015-01-11 16:16:42
Size: 9066
Editor: asbesto
Comment:
Revision 11 as of 2015-01-14 21:00:26
Size: 9047
Editor: fanfani
Comment:
Deletions are marked like this. Additions are marked like this.
Line 28: Line 28:
 * Debian GNU/Linux 7 "wheezy"  * Debian GNU/Linux 7 "wheezy" (oppure Ubuntu, o Mint)
Line 100: Line 100:
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. 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 sistemi dell'ex blocco Est.
Line 128: Line 128:
ora possiamo finalmente compilare MESS ora (beh, non proprio ora ;) ... consultiamo prima la sezione di questo howto relativa alla propria distro) possiamo finalmente compilare MESS
Line 190: Line 190:
Ti serve installare tutto cio' che e' relativo a debian 7, piu': Ti serve installare con apt-get tutto cio' che e' relativo a debian 7, piu':
Line 275: Line 275:
 * http://www.ucis.pitt.edu/nceeer/1989-801-5-2-Judy.pdf
Line 282: Line 283:
== Work in progress ==

We're trying to use VT220 / VT510 terminals connected to our REAL PDP-11/23+ and PDP-11/34 to recreate a hardware original tetris. What follow is just a scratchpad for this work.

 * ...

ORIGINAL TETRIS EMULATION HOWTO

This howto in English language: OriginalTetrisHowto

by MusIF / MIAI, Italy

di Emiliano; traduzione di Stefania; editing, debugging e test di Stefania, Ono Sendai & Asbesto

Se avete la fortuna di possedere I FERRI (PDP-11/23, Elektronika-60, il terminale in cirillico, etc.) forse potra' interessarvi come far funzionare TETRIS direttamente sull'hardware! In questo caso, leggete OriginalTetrisHardwareHowto/IT ;)

Intro

Ingredienti originali:

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

Noi useremo invece:

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

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':

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

la compilazione sputera' l'eseguibile del simulatore pdp-11 in "BIN/pdp11". Possiamo installarlo in /usr/local/bin/ da bravi installatori precisini.

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

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:

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

ed ecco l'immagine del disco con i giochini sovietici per FOBOS, che girano senza problemi anche su RT-11.

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

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:

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

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 sistemi 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.

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

scompattiamo l'archivio zip

unzip mame0156s.zip

otteniamo... un altro archivio zip ( LOL???? o_O ), vabbe'...

unzip mame.zip -d mame0156

installiamo ordunque le seguenti cose

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

ora (beh, non proprio ora ;) ... consultiamo prima la sezione di questo howto relativa alla propria distro) 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/ie15.zip
wget http://astio.ciotoni.net/tetris/ie15_keyboard.zip

NOTA: Non serve unzippare questi files: MESS li andra' a cercare automaticamente da solo ;)

Differenze tra distribuzioni

Abbiamo testato queste cose su varie distro, cosi' qui descriveremo alcune piccole differenze nella procedura di installazione di MESS.

Debian 7

Puo' darsi 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

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

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.

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.4 LTS

Stefania fa notare che manca qualcosa. Lei ha dovuto fare inoltre:

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

Linux Mint Mate edition

Ti serve installare con apt-get tutto cio' che e' relativo a debian 7, piu':

sudo apt-get install libsdl2-ttf-dev

Tutto qua! :)

FASE 3: TETRIS :)

ora possiamo finalmente lanciare l'emulatore del pdp11 con SIMH

pdp11 rt11.ini

e, subito dopo, l'emulatore del terminale 15ИЭ-00-013 con MESS

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

al prompt di RT-11 possiamo eseguire Tetris prestidigitando

RUN DL1:TETRIS

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

DIR DL1:

15ИЭ-00-013 TERMINAL SETUP

Il BEEP che l'emulatore di terminale fa premendo i tasti e' molto fastidioso. Qui l'autore dell'emulatore ci spiega come entrare nel setup del terminale:

(sorgente: 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

RIFERIMENTI

Nota: RT-11 e' licenziato dalla MENTEC, la licenza per uso hobbistico personale si trova qui: http://pdp-11.org.ru/files/license/mentec-license.txt

~~~~ CategoryMuseo

OriginalTetrisHowto/IT (last edited 2017-01-04 13:53:07 by asbesto)