Scroll to navigation

dMagneticini(5) File Formats Manual dMagneticini(5)

NAME

dMagnetic.iniConfiguration file for dMagnetic.

SHORTCUT

Run dMagnetic -helpini to see an example.

SYNOPSIS

The configuration for dMagnetic(6) , and the location of the game binaries is stored in a .ini file.

ELEMENTS

The elements within the .ini files are

Sections
Sections are in square brackets.

[FILE]

[DEFAULTGUI]

Entries
entries have a = in them.

rows=40

pawnmag=/usr/local/share/games/magneticscrolls/pawn.mag

Comments
;This is a comment

Comments start with a ;

To use a ; in an entry, it has to be preceded by a backslash \;
Consequently, using a backslash requires preceding it with a backslash as well. \\

SECTION [FILE]

Like any .ini file, it is broken down into sections, each section contains entries. One section has to be [FILES]. It should contain the names of the game binaries, so that the game engine can find them. For example:
[FILES]
pawnmag=/usr/local/share/games/magneticscrolls/pawn.mag
pawngfx=/home/games/magneticscrolls/pawn.gfx
;pawnmsdos=/home/games/magneticscrolls/msdosversions/PAWN

The .mag and .gfx packages can be downloaded from https://msmemorial.if-legends.org/memorial.php, btw. If you are lucky enough to have a copy of the MSDOS version stored on your harddrive, you can provide the directory with the pawnmsdos entry.

;wonderlandtworsc=/games/magneticscrolls/wonderland/TWO.RSC
;guildtworsc=/games/magneticscrolls/MSC/GTWO.RSC
;corruptiontworsc=/games/magneticscrolls/MSC/CTWO.RSC
;fishtworsc=/games/magneticscrolls/MSC/FTWO.RSC

"Wonderland", and the "Magnetic Scrolls Collections" used a different framework, called "Magnetic Windows". This framework utilized a collection of resource files. By providing the name and the location of the second resource file "TWO.RSC", the names of the other ones can be computed.

Another option comes in the form of using .d64 images from the Commodore 64 release of the games. Those image files come in pairs, since the games occupied both sides of the floppy. A komma is used to separate those two.
;pawnd64=/games/d64/pawn1.d64, /games/d64/pawn2.d64
;guildd64=/games/d64/guild1.d64, /games/d64/guild2.d64
;jinxterd64=/games/d64/jinxter1.d64, /games/d64/jinxter2.d64
;corruptiond64=/games/d64/corruption1.d64, /games/d64/corruption2.d64
;fishd64=/games/d64/fish1.d64, /games/d64/fish2.d64
;mythd64=/games/d64/myth.d64

One other option is to use .DSK images from the Amstrad/Schneider CPC releases of the games. Just as the D64 images, they have to be provided as a pair.
;pawnamstradcpc=/games/amstradcpc/pawn1.DSK, /games/amstradcpc/pawn2.DSK
;guildamstradcpc=/games/amstradcpc/guild1.DSK, /games/amstradcpc/guild2.DSK
;jinxteramstradcpc=/games/amstradcpc/jinxter1.DSK, /games/amstradcpc/jinxter2.DSK
;corruptionamstradcpc=/games/amstradcpc/corruption1.DSK, /games/amstradcpc/corruption2.DSK

There is also the option to use .DSK images from the Spectrum releases of the games. This platform did not have the pictures, so the games were shipped in single floppies. Thus, only one DSK file is needed
;pawnspectrum=/games/spectrum/thepawn.DSK
;guildspectrum=/games/spectrum/theguildofthieves.DSK
;jinxterspectrum=/games/spectrum/jinxter.DSK
;corruptionspectrum=/games/spectrum/corruption.DSK
;fishspectrum=/games/spectrum/fish.DSK
;mythspectrum=/games/spectrum/myth.DSK

To use ADF/ADL/ADFS images from the Acorn Archimedes releases, the parameters are as followed:
;pawnarchimedes=/games/archimedes/thepawn.ADF
;guildarchimedes=/games/archimedes/theguildofthieves.ADF
;jinxterarchimedes=/games/archimedes/jinxter.ADF
;corruptionarchimedes=/games/archimedes/corruption.ADF
;fisharchimedes=/games/archimedes/fish.ADF
;mytharchimedes=/games/archimedes/myth.ADF

To use ATR images from the AtariXL/Atari800 releases, the parameters are as followed:
;pawnatarixl=/atr/PAWN1.ATR,/atr/PAWN2.ATR
;guildatarixl=/atr/GUILD1.ATR,/atr/GUILD2.ATR
;jinxteratarixl=/atr/JINXTER1.ATR,/atr/JINXTER2.ATR

To use NIB,2MG or WOZ images from the Apple II releases, the parameters are as followed:
;pawnappleii=/nib/pawn.nib
;guildappleii=/2mg/guild.2mg
;jinxterappleii=/nib/jinxter1.nib,/nib/jinxter2.nib
;corruptionappleii=/woz/corruptA.woz,/woz/corruptB.woz,/woz/corruptC.woz

To avoid any form of misunderstanding, it is recommended to make sure that the .ini file is providing only one of the five methods. The other four should be commented out.

SECTION [RANDOM]

This section configures the random number generator.

mode=pseudo
;mode=real
seed=12345

The mode can be one of two: "pseudo" or "real". Each one of them offers a different experience whilst playing. When testing the software, or playing with scripts, the "pseudo" option should be chosen. This offers a certain degree of determinsm.
Legal values for seed are in the range of 1 to 2147483647.

SECTION [DEFAULTGUI]

This section is configuring the default output Interface.

[DEFAULTGUI]
rows=40
columns=100
;align=left
align=block
;align=right
;mode=none
;mode=monochrome
;mode=low_ansi
;mode=low_ansi2
mode=high_ansi
;mode=high_ansi2
;mode=sixel
low_ansi_characters=\\/=|\;
monochrome_characters= .:-=+*x#@$X
sixel_resolution=1024x768
sixel_forceresolution=No

Changing the numbers of rows will make pictures longer, changing the number of columns makes them wider. To change the output mode, comment it in, and comment the current one out.
The characters that will be used in the low ansi rendering mode can be configured with the low_ansi_characters entry. Note that the backslash and semicolon need to be escaped.
The monochrome_characters entry is a the actual shade that will be displayed. The leftmost part start with the lowest intensity, it goes up until the right.
The sixel resolution is setting the amount of pixels in which the images are being rendered with sixel mode.
Not forcing the resolution will render the pictures with the actual aspect ratio.

EXAMPLE

;you can download the files from https://msmemorial.if-legends.org/magnetic.php
[FILES]
pawnmag=/usr/local/share/games/magneticscrolls/pawn.mag
pawngfx=/usr/local/share/games/magneticscrolls/pawn.gfx
;pawnmsdos=/usr/local/share/games/magneticscrolls/msdosversions/PAWN
;pawnd64=/d64/PAWN1.d64,/d64/PAWN2.d64
;pawnamstradcpc=/dsk/PAWN1.DSK,/dsk/PAWN2.DSK
;pawnspectrum=/dsk/PAWNspectrum.DSK
;pawnarchimedes=/adf/PAWNarchimedes.adf
;pawnatarixl=/atr/PAWN1.ATR,/atr/PAWN2.ATR
;pawnappleii=/nib/pawn.nib
guildmag=/usr/local/share/games/magneticscrolls/guild.mag
guildgfx=/usr/local/share/games/magneticscrolls/guild.gfx
;guildmsdos=/usr/local/share/games/magneticscrolls/msdosversions/GUILD
;guildtworsc=/usr/local/share/games/magneticscrolls/MSC/GTWO.RSC
;guild64=/d64/GUILD1.d64,/d64/GUILD2.d64
;guildamstradcpc=/dsk/GUILD1.DSK,/dsk/GUILD2.DSK
;guildspectrum=/dsk/GUILDspectrum.DSK
;guildarchimedes=/adf/GUILDarchimedes.adf
;guildatarixl=/atr/GUILD1.ATR,/atr/GUILD2.ATR
;guildappleii=/nib/guild.nib
jinxtermag=/usr/local/share/games/magneticscrolls/jinxter.mag
jinxtergfx=/usr/local/share/games/magneticscrolls/jinxter.gfx
;jinxtermsdos=/usr/local/share/games/magneticscrolls/msdosversions/JINXTER
;jinxterd64=/d64/JINXTER1.d64,/d64/JINXTER2.d64
;jinxteramstradcpc=/dsk/JINXTER1.DSK,/dsk/JINXTER2.DSK
;jinxterspectrum=/dsk/JINXTERspectrum.DSK
;jinxterarchimedes=/adf/JINXTERarchimedes.adf
;jinxteratarixl=/atr/JINXTER1.ATR,/atr/JINXTER2.ATR
;jinxterappleii=/nib/jinxter1.nib,/nib/jinxter2.nib
corruptionmag=/usr/local/share/games/magneticscrolls/ccorrupt.mag
corruptiongfx=/usr/local/share/games/magneticscrolls/ccorrupt.gfx
;corruptionmsdos=/usr/local/share/games/magneticscrolls/msdosversions/CORRUPT
;corruptiontworsc=/usr/local/share/games/magneticscrolls/MSC/CTWO.RSC
;corruptiond64=/d64/CORRUPT1.d64,/d64/CORRUPT2.d64
;corruptionamstradcpc=/dsk/CORRUPTION1.DSK,/dsk/CORRUPTION2.DSK
;corruptionspectrum=/dsk/CORRUPTIONspectrum.DSK
;corruptionarchimedes=/adf/CORRUPTIONarchimedes.adf
;corruptionappleii=/woz/corruptA.woz,/woz/corruptB.woz,/woz/corruptC.woz
fishmag=/usr/local/share/games/magneticscrolls/fish.mag
fishgfx=/usr/local/share/games/magneticscrolls/fish.gfx
;fishmsdos=/usr/local/share/games/magneticscrolls/msdosversions/FISH
;fishtworsc=/usr/local/share/games/magneticscrolls/MSC/FTWO.RSC
;fishd64=/d64/FISH1.d64,/d64/FISH2.d64
;fishamstradcpc=/dsk/FISH1.DSK,/dsk/FISH2.DSK
;fishspectrum=/dsk/FISHspectrum.DSK
;fisharchimedes=/adf/FISHarchimedes.adf
mythmag=/usr/local/share/games/magneticscrolls/myth.mag
mythgfx=/usr/local/share/games/magneticscrolls/myth.gfx
;mythmsdos=/usr/local/share/games/magneticscrolls/msdosversions/MYTH
;mythd64=/usr/local/share/games/magneticscrolls/MYTH.d64
;mythamstradcpc=/dsk/MYTH1.DSK,/dsk/MYTH2.DSK
;mythspectrum=/dsk/MYTHspectrum.DSK
;mytharchimedes=/adf/MYTHarchimedes.adf
wonderlandmag=/usr/local/share/games/magneticscrolls/wonder.mag
wonderlandgfx=/usr/local/share/games/magneticscrolls/wonder.gfx
;wonderlandtworsc=/usr/local/share/games/magneticscrolls/WONDER/TWO.RSC
[RANDOM]
mode=pseudo
;mode=real
seed=12345
[DEFAULTGUI]
rows=40
columns=120
;align=left
align=block
;align=right
;mode=none
;mode=monochrome
;mode=monochrome_inv
;mode=low_ansi
mode=low_ansi2
;mode=high_ansi
;mode=high_ansi2
;mode=sixel
low_ansi_characters=\/|=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
monochrome_characters= .-=+*x#@$X
sixel_resolution=800x600
sixel_forceresolution=No

BUGS

Report bugs to ⟨dettus@dettus.net⟩. Make sure to include DMAGNETIC somewhere in the subject.

AUTHOR

Written by Thomas Dettbarn

SEE ALSO

dMagnetic(6)

January 22nd, 2023 OpenBSD