- Things we need to configure: Locale Keyboard Timezone timedatectl show timedatectl --no-pager list-timezones timedatectl set-timezone WiFi Region WiFi SSID WiFi Passkey Bluetooth Hostname Password Volume Audio Internal / HDMI - Change /boot/firmware/cmdline.txt: console=serial0,115200 console=tty3 logo.nologo root=PARTUUID=df70021d-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=US video=HDMI-A-1:640x480M@60,panel_orientation=up - Change /boot/firmware/config.txt (add to end): [pi4] arm_freq=2100 gpu_freq=750 over_voltage=6 [all] dtoverlay=audremap,pins_18_19 disable_splash=1 disable_touchscreen=1 - Tweak CPU: sudo apt-get install cpufrequtils echo "CPU_DEFAULT_GOVERNOR=\"performance\"" >> /etc/cpu_governor - Hide some text: echo > /etc/issue echo > /etc/motd cat <<- GETTY > /etc/systemd/system/getty@tty1.service.d/autologin.conf [Service] ExecStart= ExecStart=-/sbin/agetty --skip-login --nonewline --noissue --autologin ${SUDO_USER} --noclear %I $TERM GETTY touch .hushlogin sudo chmod -x /etc/update-motd.d/* - Set config options: sudo raspi-config nonint do_update sudo raspi-config nonint do_hostname tinydos sudo raspi-config nonint do_boot_behaviour B2 sudo raspi-config nonint do_boot_wait 0 sudo raspi-config nonint do_audio 0 # ERRORS! sudo raspi-config nonint do_blanking 0 sudo raspi-config nonint do_ssh 0 sudo raspi-config nonint do_rpi_connect 1 sudo raspi-config nonint do_vnc 0 sudo raspi-config nonint do_net_names 0 sudo raspi-config nonint do_wayland W1 sudo raspi-config nonint do_overscan_kms 1 0 - Install Samba: sudo apt-get install samba samba-common-bin smbclient cifs-utils cat <<- SAMBA >> /etc/samba/smb.conf [DOS] comment = Tiny DOS Files path = /home/scott/dos writable = yes browseable = yes public = no SAMBA (echo "${PASSWORD}"; echo "${PASSWORD}") | sudo smbpasswd -s -a "${SUDO_USER}" sudo service smbd restart - Install DOSBox Staging: sudo apt install flatpak flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo flatpak install flathub io.github.dosbox-staging - Configure DOSBox: sed -i "s/fullscreen.\s*= false/fullscreen = true/" dos/dosbox-staging.conf sed -i "s/fullresolution.\s*= desktop/fullresolution = 1920x1080/" dos/dosbox-staging.conf sed -i "s/startup_verbosity.\s*= auto/startup_verbosity = quiet/" dos/dosbox-staging.conf sed -i "s/aspect.\s*= auto/aspect = stretch/" dos/dosbox-staging.conf sed -i "s/integer_scaling.\s*= auto/integer_scaling = off/" dos/dosbox-staging.conf sed -i "s/viewport.\s*= fit/viewport = 80%/" dos/dosbox-staging.conf sed -i "s/glshader.\s*= crt_auto/glshader = none/" dos/dosbox-staging.conf sed -i "s/cycles.\s*= auto/cycles = 40000/" dos/dosbox-staging.conf sed -i "s/capture_dir.\s*= capture/capture_dir = ~\/dos\/capture/" dos/dosbox-staging.conf sed -i "s/phonebookfile.\s*= phonebook.txt/phonebookfile = ~\/dos\/phonebook.txt" dos/dosbox-staging.conf sed -i "s/ipx.\s*= false/ipx = true/" dos/dosbox-staging.conf cat <<- STARTUP >> dos/dosbox-staging.conf @echo off cls mount c ~/dos/c > NUL c: call dos\bootup.bat autoexec.bat STARTUP - Start on boot: cat <<- "XINIT" > .xinitrc amixer -q -M sset Master 100% xrandr --output HDMI-1 --mode "1920x1080" xrandr --output HDMI-2 --same-as HDMI-1 flatpak run io.github.dosbox-staging XINIT cat <<- "PROFILE" >> .profile # DOSBox Staging if [[ -z \"\${SSH_CLIENT}\" ]]; then startx -- -quiet -depth 24 fi PROFILE - Set up DOS folder: mkdir -p dos/c/DOS mkdir -p dos/capture ln -s /home/${USER}/.var/app/io.github.dosbox-staging/config/dosbox/dosbox-staging.conf dos/. cat <<- AUTOEXEC > dos/c/AUTOEXEC.BAT @echo off PATH=C:\DOS;Z:\;Y:\DOS dir AUTOEXEC unix2dos dos/c/AUTOEXEC.BAT echo "@c:\snafu\gets\tools\se.exe %1 %2 %3 %4 %5 %6 %7 %8 %9" > dos/c/DOS/EDIT.BAT unix2dos dos/c/DOS/EDIT.BAT - Modify Plymouth: cd /usr/share/plymouth/themes/pix sudo mv splash.png splash.png.old sudo cp ~/splash.png splash.png sudo sed -i "s/Plymouth.SetUpdateStatusFunction(message_callback);/#Plymouth.SetUpdateStatusFunction(message_callback);/" pix.script sudo update-initramfs -u