bochs sobre Raspberry Pi ( em Português )

Este post também está disponível em: Inglês Chinês Russo Espanhol Francês Árabe Alemão Japonês

< x86 em ARM >
Eu tento correr DOS em Debian ofegante em Raspberry Pi.
( Windows95 também é possível, mas é muito lento )

< Instale “bochs” >
Instalação “bochs” é muito fácil.
Linha de comando é como abaixo.

root@myhost:~# apt-get install bochs bochs-x bochs-sdl bochs-svga

< Gerar imagem de disco rígido >
Executar “bximage” no seu Raspberry Pi.
Eu recomendo para executar “bximage” como usuário não-root.
Você deve executar “bximage” como um usuário que usar “bochs”.
É 2GB amostra da imagem.

$ bximage
========================================================================
                                bximage
                  Disk Image Creation Tool for Bochs
        $Id: bximage.c,v 1.34 2009/04/14 09:45:22 sshwarts Exp $
========================================================================
Do you want to create a floppy disk image or a hard disk image?
Please type hd or fd. [hd]
What kind of image should I create?
Please type flat, sparse or growing. [flat]
Enter the hard disk size in megabytes, between 1 and 129023
[10] 
2048
I will create a ‘flat’ hard disk image with
  cyl=4161
  heads=16
  sectors per track=63
  total sectors=4194288
  total size=2047.99 megabytes
What should I name the image?
[c.img] 
msdoshdd.img
Writing: [] Done.
I wrote 2147475456 bytes to msdoshdd.img.
The following line should appear in your bochsrc:
  
ata0-master: type=disk, path=”msdoshdd.img”, mode=flat, cylinders=4161, heads=16, spt=63

“bximage”, disse para adicionar linha “
ata0-master: type=disk, path=”msdoshdd.img”, mode=flat, cylinders=4161, heads=16, spt=63” para “.bochsrc”.

< Gerar “.bochsrc” para MS-DOS >
Vá para o seu diretório home.
Eu uso o “nano” para editar arquivos de texto.

$ cd /home/username
$ nano .bochsrc

Meu “.bochsrc” é como abaixo.

megs: 64
romimage: file=$BXSHARE/BIOS-bochs-latest
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
display_library: sdl
ata0-master: type=disk, path=/home/username/msdoshdd.img, mode=flat, cylinders=4161, heads=16, spt=63
ata0-slave: type=cdrom, path=/home/username/MS-DOS-6.22.iso, status=inserted
boot: cdrom, disk
#keyboard_mapping: enabled=1, map=/usr/share/bochs/keymaps/x11-pc-us.map
log: bochsout.txt
clock: sync=realtime, time0=local

“MS-DOS-6.22.iso” é o meu arquivo de inicialização do MS-DOS. Por favor, substitua-o para qualquer arquivo ISO inicializável que você tem. Na minha “.bochsrc”, rato não está disponível. Se você quiser usar o mouse, por favor google sobre “Como editar bochsrc para usar o mouse.”

< Instalar VNC >
Se você usar o monitor HDMI, você não precisa deste passo.
Se você não usar a tela, você precisa instalar o servidor VNC para X remoto no Raspberry Pi.
Executar esta linha de comando como root.

root@myhost:~# apt-get install tightvncserver

Executar esta linha de comando como um usuário que usar “bochs”.

$ vncserver :1 -geometry 1024×768 -depth 24
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)? 
n
New ‘X’ desktop is myhost:1

“:1″ significa a porta “5901″.
“-geometry 1024×768″ significa resolução.
“-depth 24″ significa cores em bits.

< Executar bochs >
Por favor, ligue o seu servidor VNC em Raspberry Pi. (Ou use “startx” com display HDMI)
E executar terminal. ( ex. LXTerminal )
Executar bochs no terminal.

$ bochs

Às vezes bochs perguntar-lhe como essa sintaxe.

A PANIC has occurred.  Do you want to:
  cont       – continue execution
  alwayscont – continue execution, and don’t ask again.
               This affects only PANIC events from device [MEM0 ]
  die        – stop execution now
  abort      – dump core
  debug      – hand control to gdb

Eu sempre respondo “alwayscont”.

< Para ser honesto >
Tentei instalar Windows 95.
Mas ele precisa de imagens FD de DOS e Windows 3.1. (Meu Windows 95 é versão de atualização)
Era problemático para mim.
Então eu mudei o meu objetivo.