Aktualności Forum Graffiti Publicystyka Teleport
  • Integracja FS-UAE z mc (Midnight Commander) na Linuksie

28.03.2016 23:40, autor artykułu: Piotr Grzegorzyca (rePeter)
odsłon: 2077, powiększ obrazki, wersja do wydruku,

Krótki opis integracji emulatora FS-UAE z managerem plików mc (Midnight Commander) w systemie Linux Wykorzystując możliwość uruchamiania fs-uae z linii komend z różnymi parametrami, można w prosty sposób nakłonić mc do pełnienia roli launchera programów Amigowych, a dokładnie do uruchamiania obrazów w formacie adf lub hdf.

Prócz managera mc potrzebny jest niewielki skrypt dzięki któremu będzie możliwe uruchamianie programów wielodyskietkowych:

#!/bin/bash
# skrypt parsuje i kompletuje parametry oraz uruchamia FS-UAE 
# uruchamia emulator amigi fs-uae z kolejnymi parametrami przypisanymi do kolejnych floppy

DRIVE=0
PARAMETRY=""
PLIK=""

# rozdzielenie nazw plików .adf slashem "/", aby rozpoznawać pliki ze spacjami w nazwie
ARG=$(echo $@ | sed 's/\(\.[aA][dD][fF]\) */\1\//g' )

# 'skompletowanie linii argumentów
IFS=/
for PLIK in $ARG; do
	# kolejne nazwy plików .adf przypisane do kolejnych fdd, 
	# i na wszelki wypadek jako kolejne image przypisane do pierwszego floppa (dla gier, które nie widzą następnych napędów)
	PARAMETRY="$PARAMETRY --floppy-drive-$DRIVE=\"$PLIK\" --floppy_image_$DRIVE=\"$PLIK\""
	((DRIVE++))
done
echo	fs-uae $PARAMETRY

# uruchomienie FS-UAE  (wykorzystanie eval ze wzgędu na znaki specjalne w parametrach, np. nawiasy)
eval fs-uae ./fs-uae.conf  $PARAMETRY &>/dev/null
Skrypt można zapisać np. w katalogu domowym ~/bin jako np. AMIGA (jak komu wygodnie, byle pamiętać o ścieżkach dostępu) i nadać mu prawa do wykonywania. Następnie należy skonfigurować mc edytując jego plik ~/.config/mc/mc.ext lub wybierając z menu "Polecenie-Zmodyfikuj plik rozszerzeń", dopisując sekwencję:
### obsługa emulatora Amigi FS-UAE
regex/\.([Aa][Dd][FfzZ])$
    Open=AMIGA %s
regex/\.([hH][Dd][Ff])$
    Open=fs-uae ./fs-uae.conf --hard_drive_0=%f  &>/dev/null
Od tej pory każde kliknięcie w mc na pliku adf lub hdf uruchomi fs-uae z wybranym obrazem dyskietki lub dysku twardego. Aby uruchomić program wymagający kilku dyskietek, trzeba w mc zaznaczyć (klawiszem INSERT lub myszką RMB) określone adfy i nacisnąć ENTER. Ten sposób uruchamiania ma dodatkowo tę zaletę, że obrazy adf i hdf można uruchamiać automatycznie z różnymi konfiguracjami. Wystarczy stworzyć katalog, wrzucić do niego adfy o tych samych wymogach (np. działające tylko na emulacji gołej A500) i utworzyć w tym samym katalogu plik o nazwie "fs-uae.conf" z wybraną konfiguracją fs-uae. np. fs-uae.conf dla gołej A500 wystarczy:
[config]
amiga_model = A500
kickstarts_dir = /twoj/katalog/z/kickstartami
a fs-uae.conf dla AGA z HD np:
[config]
amiga_model = A4000/040
kickstart_file = /twoj/katalog/z/kickstartami/3.1.kickstart.rom
hard_drive_0=/twoj/katalog/z/systemem
hard_drive_1=/twoj/katalog/z/programami
fast_memory = 8192
zorro_iii_memory = 65536
floppy_drive_speed = 0
Uwagi fs-uae korzysta z OpenGL, więc system musi mu taki driver udostępnić. W Linuksie można to sprawdzić programikiem: glxgears Właściciele sprzętu z kartami NVIDIA Optimus muszą dodatkowo zainstalować oprogramowanie Bumblebee i uruchamiać programy wymagające OpenGL poleceniem optirun np. ostatnia linia z powyższego skryptu wyglądałaby wtedy tak:
eval optirun fs-uae ./fs-uae.conf  $PARAMETRY &>/dev/null

    tagi: FS-UAE, mc, Linux
dodaj komentarz
Na stronie SCENA.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem