Difference between revisions of "Build VICE with SDL2 Interface"

From Jay's Cafe' Wiki
m
m
 
(26 intermediate revisions by the same user not shown)
Line 1: Line 1:
--ks.cfg--
[[Creating a self-booting x64/x128 VirtualBox Implementation]]
 
[[Building SDL2 VICE from current code base from Sourceforge]]
 
[[Build SDL2 VICE without X on an x86/amd64]]
 
[[SDL2 VICE Cross Compiling on Linux for Windows]]
 
'''Bold text'''as per https://github.com/midwan/amiberry/wiki/Compile-SDL2-from-source SDL2 must be compiled from source<br>
This documentation is outdated. Have to work on a new one pulling from Amiberry docs.<br>
https://github.com/midwan/amiberry/wiki/Using-Amiberry-WHDBooter-with-RetroPie is the master document<br>
<pre>
<pre>
#Generated by Kickstart Configurator
sudo apt-get install libfreetype6-dev libgl1-mesa-dev libgles2-mesa-dev libgbm-dev libudev-dev libasound2-dev \
#platform=AMD64 or Intel EM64T
liblzma-dev git build-essential gir1.2-ibus-1.0 libdbus-1-dev libegl1-mesa-dev libibus-1.0-5 libibus-1.0-dev \
libice-dev libsm-dev libsndio-dev libwayland-bin libwayland-dev libxi-dev libxinerama-dev libxkbcommon-dev \
libxrandr-dev libxss-dev libxt-dev libxv-dev x11proto-randr-dev x11proto-scrnsaver-dev x11proto-video-dev \
x11proto-xinerama-dev -y
 
cd ~
 
wget https://www.libsdl.org/release/SDL2-2.0.8.tar.gz


#System language
tar zxvf SDL2-2.0.8.tar.gz
lang en_US
 
#Language modules to install
cd SDL2-2.0.8
langsupport en_US
*for RPi
#System keyboard
./configure --disable-video-rpi --enable-video-kmsdrm
keyboard us
 
#System mouse
*for amd64/i386
mouse
./configure --enable-video-direcfb
#System timezone
 
timezone America/Chicago
make -j $(nproc --all); sudo make install
#Root password
 
rootpw --disabled
apt install cc65 xa65
#Initial user
 
user jay --fullname "Jay C. Theriot" --iscrypted --password $1$4GAV/R2I$nbxnqpHc0DOG4045rLpYy1
cd ~
#Reboot after installation
 
reboot
wget https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.0.2.tar.gz
#Use text mode install
 
text
tar zxvf SDL2_image-2.0.2.tar.gz
#Install OS instead of upgrade
 
install
cd SDL2_image-2.0.2 && mkdir build && cd build
#Use CDROM installation media
 
cdrom
../configure
#System bootloader configuration
 
bootloader --location=mbr
make -j $(nproc --all)
#Clear the Master Boot Record
 
zerombr yes
sudo make install
#Partition clearing information
cd ~
clearpart --all --initlabel
 
#Disk partitioning information
wget https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-2.0.15.tar.gz
part / --fstype ext4 --size 1 --grow --asprimary
 
part swap --size 2048
tar zxvf SDL2_ttf-2.0.15.tar.gz
#System authorization infomation
 
auth  --useshadow  --enablemd5
cd SDL2_ttf-2.0.15 && mkdir build && cd build
#Network information
 
#network --bootproto=dhcp --device=eth0
../configure
#Firewall configuration
 
firewall --disabled
make -j $(nproc --all)
url --url http://archive.ubuntu.com/ubuntu
 
#preseed proxy
sudo make install
preseed mirror/http/proxy string http://192.168.49.12:3142
#Do not configure the X Window System
skipx
#Package install information
%packages
openssh-server
vim-nox
vim-scripts
exuberant-ctags
xa65
bison
flex
libpcap*
libxaw7-dev
libxaw3dxft8-dev
build-essential
net-tools
</pre>
</pre>
[[ks.cfg]]
<hr>
<hr>
Install prerequisites
Install prerequisites
<pre>
<pre>
sudo apt install xa65 bison flex libpcap* libxaw7-dev libxaw3dxft8-dev
sudo apt install xa65 bison flex libpcap* libxaw7-dev libxaw3dxft8-dev libsdl2-dev
sudo apt install libsdl2-dev
</pre>
or if you did this without rebuilding:
<pre>
apt install bison flex libpcap* -y
</pre>
Retrieve vice-3.2.tar.gz
<pre>
wget 192.168.0.15/~jay/vice/vice-3.2.tar.gz
cd
tar xvzf vice-3.2.tar.gz
cd vice-3.2
</pre>
</pre>
Configure and build
Configure and build
<pre>
<pre>
configure --enable-ethernet --enable-realdevice --enable-sdlui2 --enable-vte --enable-hardsid --enable-cpuhistory --enable-platformdox  --with-xaw3d --with-uithreads --with-x  
./configure --enable-ethernet --enable-realdevice --enable-sdlui2 --enable-vte --enable-hardsid\
--enable-cpuhistory --enable-platformdox  
</pre>
Or with gnome gui
<pre>
sudo apt install libgtk-3-dev
./configure --enable-ethernet --enable-realdevice --enable-native-gtk3ui --enable-hardsid \
  --enable-cpuhistory --enable-platformdox  --with-x
 
make -j 6
make -j 6
sudo make install
sudo make install
</pre>
 
Needs X-server to run.
Needs X-server to run.
<pre>
<pre>
Line 93: Line 113:
</pre>
</pre>
<hr>
<hr>
I think the problem is that I was doing this on a kvm-qemu vm with no graphics card.  I'm going to try again on a spare metal 990.<br>
I was able to get it going on a metal 990 using sdl1.2-dev and blackbox with an x-server.
I'm thinking that I will need to run the bare minimal xserver to do this.
I'm working this again, but on a RPi Zero W.
<hr>
After expending much energy, I decided to not reinvent the wheel and use combian as the base and then make the necessary edits.
see [[building vice v.2]]

Latest revision as of 16:47, 4 February 2021

Creating a self-booting x64/x128 VirtualBox Implementation

Building SDL2 VICE from current code base from Sourceforge

Build SDL2 VICE without X on an x86/amd64

SDL2 VICE Cross Compiling on Linux for Windows

Bold textas per https://github.com/midwan/amiberry/wiki/Compile-SDL2-from-source SDL2 must be compiled from source
This documentation is outdated. Have to work on a new one pulling from Amiberry docs.
https://github.com/midwan/amiberry/wiki/Using-Amiberry-WHDBooter-with-RetroPie is the master document

sudo apt-get install libfreetype6-dev libgl1-mesa-dev libgles2-mesa-dev libgbm-dev libudev-dev libasound2-dev \
liblzma-dev git build-essential gir1.2-ibus-1.0 libdbus-1-dev libegl1-mesa-dev libibus-1.0-5 libibus-1.0-dev \
libice-dev libsm-dev libsndio-dev libwayland-bin libwayland-dev libxi-dev libxinerama-dev libxkbcommon-dev \
libxrandr-dev libxss-dev libxt-dev libxv-dev x11proto-randr-dev x11proto-scrnsaver-dev x11proto-video-dev \
x11proto-xinerama-dev -y 

cd ~

wget https://www.libsdl.org/release/SDL2-2.0.8.tar.gz

tar zxvf SDL2-2.0.8.tar.gz

cd SDL2-2.0.8
*for RPi
./configure --disable-video-rpi --enable-video-kmsdrm

*for amd64/i386
./configure --enable-video-direcfb 

make -j $(nproc --all); sudo make install

apt install cc65 xa65

cd ~

wget https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.0.2.tar.gz

tar zxvf SDL2_image-2.0.2.tar.gz

cd SDL2_image-2.0.2 && mkdir build && cd build

../configure

make -j $(nproc --all)

sudo make install
cd ~

wget https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-2.0.15.tar.gz

tar zxvf SDL2_ttf-2.0.15.tar.gz

cd SDL2_ttf-2.0.15 && mkdir build && cd build

../configure

make -j $(nproc --all)

sudo make install

ks.cfg


Install prerequisites

sudo apt install xa65 bison flex libpcap* libxaw7-dev libxaw3dxft8-dev libsdl2-dev 

or if you did this without rebuilding:

apt install bison flex libpcap* -y

Retrieve vice-3.2.tar.gz

wget 192.168.0.15/~jay/vice/vice-3.2.tar.gz
cd 
tar xvzf vice-3.2.tar.gz
cd vice-3.2

Configure and build

./configure --enable-ethernet --enable-realdevice --enable-sdlui2 --enable-vte --enable-hardsid\
 --enable-cpuhistory --enable-platformdox 

Or with gnome gui

sudo apt install libgtk-3-dev
./configure --enable-ethernet --enable-realdevice --enable-native-gtk3ui  --enable-hardsid \
   --enable-cpuhistory --enable-platformdox  --with-x  

make -j 6
sudo make install

Needs X-server to run.
<pre>
sudo tasksel

Select XUbuntu minimal Install and reboot

  • I like tasksel. It allows me to be lazy

Needs SDLVideo Renderer. opengl opengles2 software


SDLJoystick: No joysticks found
SDLKeyboard: Loading hotkey map `/usr/local/lib64/vice/C64/sdl_hotkeys.vkm'.
SDLKeyboard: Warning - Failed to open `/home/jay/.vice/sdl-hotkey-C64.vkm'.
Keyboard: Loading keymap `/usr/local/lib64/vice/C64/sdl_sym.vkm'.
SDLVideo: Available Renderers: opengl opengles2 software 
Segmentation fault (core dumped)
jay@vm-C64Build01:~$ 

I think the problem is that I was doing this on a kvm-qemu vm with no graphics card. I'm going to try again on a spare metal 990.
I was able to get it going on a metal 990 using sdl1.2-dev and blackbox with an x-server. I'm thinking that I will need to run the bare minimal xserver to do this.

I'm working this again, but on a RPi Zero W.


After expending much energy, I decided to not reinvent the wheel and use combian as the base and then make the necessary edits. see building vice v.2