# ---------------- FreeMiNT configuration file ---------------------
#
# The mint.cnf file is loaded, when the entire system is practically
# up, all device drivers and filesystem drivers have been loaded etc.
# If you want to control earlier settings, see mint.ini file.
#
# Edit this with a normal ASCII text editor. Lines starting with '#'
# are comments. Other lines are commands for MiNT to execute at boot
# up, or variables that control how MiNT behaves.

# NOTICE: as of FreeMiNT 1.16.0, the format of most keywords has
#         changed. Old keywords are still supported, however, you
#         cannot use this configuration file for older versions
#         of MiNT!

# The term `sysdir' we use here is short for `system directory' and
# means the directory, where you keep your mint.cnf file, your
# modules (XFS and XDD files) and other such system binaries. The
# sysdir value is usually u:/c/mint.
#
# For clarity, it is assumed all over this example file, that your
# boot drive is C:, and, if you have installed SpareMiNT distribution,
# that your SpareMiNT drive is E:. Note, that if you have installed
# SpareMiNT, you can refer to your sysdir as u:/boot/mint/

#
    FS_CACHE_SIZE=200
# -------------------- ACTUAL CONFIGURATION -----------------------
#

# Set current working directory to u: respective /
#
# FreeMiNT 1.16 does this automatically, this line is only required
# on previous versions (also on 1.16 alphas compiled before second
# half of July 2004).

#cd u:/

#
# ------------------ mint.cnf parser commands ---------------------
#

# The '#' sign at the begin of the line means that a comment follows.
# The entire line after the '#' sign will be ignored by the parser.

# AES : MyAeS ou XaAES

#INIT=u:/sbin/init
INIT=u:/c/mint/xaaes/xaloader.prg

# The "set" directive controls the behaviour of the mint.cnf parser.
# It accepts one of three parameters:
#
#set -q - silent output (+q for verbose output)
#set -v - print command lines (+v don't)
#set -c - control interpretation of escape sequences

#set -q

# The include command allows you to include other files while the
# mint.cnf file is being interpreted. The included file will be
# interpreted as a part of the mint.cnf file.

#include u:/c/mint/vars.cnf

# More commands follow.

#
# Various stuff. This is usually the best configuration.
# See docs for details.
#

setenv ALERT YES

#
# Configure the filesystems
#

# UNIXMODE is used by all programs linked with MiNTlibs. See docs.
setenv UNIXMODE /brUs

#
# ---------------------- Kernel settings --------------------------
#

#
# Here are things you can change if you want to. There are reasonable
# defaults for all of these.
#

# KERN_SLICES controls how long a process may run before being
# interrupted. The number means an amount of 20 ms time intervals.
#
# The default value (2) is usually best, but if you tend to run
# very processor intensive applications in the foreground, you might
# want to put KERN_SLICES=3 (this makes CPU hogs get more time than
# they otherwise would).
#
# The smaller the KERN_SLICES value, your processes have faster
# response time but the general performance is worse. Very fast
# machines however, may benefit from setting 1 here.

#KERN_SLICES=2

# KERN_DEBUG_LEVEL controls output of global debugging information.
# The higher the level, the more stuff MiNT will spew about about
# what it's doing.
#
# The average user doesn't want to hear about this stuff, so the
# default is 1, i.e. display ALERT messages only. Note that you need
# a debug kernel to get more: normal kernels do not contain so much
# debug information.
#
# KERN_DEBUG_DEVNO is the BIOS device number to which the info
# should be sent.
#
# Devno can be: 0=printer, 1=aux/modem, 2=screen (console), 3=midi,
# 4=keybrd, 5=raw.
#
# The default is the console.

#KERN_DEBUG_LEVEL=1
#KERN_DEBUG_DEVNO=2

# KERN_BIOSBUF controls how BIOS I/O is performed. Normally, MiNT
# tries to buffer this to provide a (considerable) improvement in
# speed. However, some applications may get upset by this.
#
# KERN_BIOSBUF=NO turns off all buffering for maximum compatibility.
# The default is YES.

KERN_BIOSBUF=NO

# KERN_SECURITY_LEVEL= enables the appropriate security level:
#
# 0 - recommended for single user setups, like MultiTOS (default).
# 1 - recommended for multiuser setups, like KGMD.
# 2 - full protection, unsupported by software, thus discouraged.

KERN_SECURITY_LEVEL=0

# KERN_MPFLAGS controls the memory protection behaviour. Its argument
# is a bitfield. Only the bit 0 is defined: 1 means, that more strict
# model of the protection should be enabled. Some programs may
# refuse to run, so the default is 0.

#KERN_MPFLAGS=1

# TPA_FASTLOAD=YES forces fast loading (without zeroing all the
# memory) for all programs. This defines a default state, that can be
# modified later via appropriate kernel calls (use MiNT Setter
# utility to toggle it later when neessary, without reboots).
#
# TPA_FASTLOAD=NO (default) means that the information from the
# program header will be used to decide (this is like TOS does).

TPA_FASTLOAD=NO

# Set maximum additional TPA size for new processes
# (in kilobytes). The default is 1024. Better keep it low (1024 is
# what we call low) if your machine has 4 MB RAM or less.

TPA_INITIALMEM=4096

# FS_NEWFATFS= enables the new FAT filesystem driver for selected FAT
# filesystems. The old TOS FS will be used otherwise.
#
# The default depends on whether the TOSFS driver is compiled into the
# kernel or not. If it is, all drives are TOSFS by default. If not,
# all drives are NEWFATFS by default and this keyword has no effect.

#FS_NEWFATFS=A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,V,W,X,Y,Z

# FS_VFAT= enables VFAT extension for selected drives specified in the
# FS_NEWFATFS= command. The VFAT extension is disabled by default.
#
# If you use both TOS and MiNT, better don't enable VFAT extension
# on your boot drive.

#FS_VFAT=R

# FS_VFAT_LCASE=YES tells the kernel to return lowercase filenames
# from VFAT directory searches. The default is NO.

#FS_VFAT_LCASE=YES

# FS_WB_ENABLE= enables write back cache for selected drives. The
# write back cache is disabled by default. Also, it does not have
# any effect for TOSFS drives.

#FS_WB_ENABLE=C,D,E,F

# FS_CACHE_SIZE= specifies the size of disk cache in kilobytes for the
# internal caching module. Default is 128.

FS_CACHE_SIZE=0

# FS_CACHE_PERCENTAGE specifies the size of the disk cache (in
# percents) to be filled with linear reads. The default is 5.

#FS_CACHE_PERCENTAGE=10

# FS_UPDATE= set update time for system update daemon in seconds
# default is 5, it isn't recommended to use a value less than 4.

#FS_UPDATE=10

# Software write protection on filesystem level.

#FS_WRITE_PROTECT=R,S

# FDC_HIDE_B= tells the MiNT to remove floppy drive B: from the
# system.
# It is useful on single floppy systems to get rid of "Insert
# disk B: into drive A:" messages from the AES. Default is NO.

FDC_HIDE_B=YES

# PROC_MAXMEM= gives the maximum amount of memory that any process
# may use (in kilobytes). The default is to make this unlimited, but
# if you have a lot of memory and/or programs that grab more memory
# than they should, try setting this.
#
# E.g. to limit processes to 4096K of memory, remove the '#' at the
# beginning of the next line.
#
# WARNING: the process will not be allowed to allocate memory beyond
# the limit, and it won't "see" more memory as available from the
# system.
# Please understand that programs like "free" (or any other that
# interrogates the system how much memory is available) is a process
# as well, thus it will undergo this limit too!
#
# Decent shells (desktops) allow you to limit the maximum amount of
# memory independently for each program.

#PROC_MAXMEM=4096

# Three commands, that define output files for RS-232, console and
# printer devices. The argument for each one must be a pathname.
#
# For best results, the convention u:/drive/pathname should be used
# for all specified pathnames from now on.

#GEMDOS_AUX=u:/c/mint/aux.out
#GEMDOS_CON=u:/c/mint/con.out
#GEMDOS_PRN=u:/c/mint/prn.out

# End of kernel settings

#
# -------------------------- Commands ------------------------------
#

# Here are some commands that you can give to MiNT:
#
# alias d: path -- make a fake "drive" that actually points to the
#                  given path
# cd path       -- changes MiNT's default directory
# echo message  -- print something on the screen
# exec program  -- runs a program; you must give the complete path
#                  and file extensions (e.g. c:/bin/echo.prg)
# include file  -- include another portion of the MINT.CNF file.
# sln path link -- make a symbolic link named "link" pointing to
#                  "path". "link" must be on drive U: for this to work

# Examples follow
#
# Notice you have to adjust commands below for your filesystem
# structure.
#
# You could use "alias" to provide a quick way of getting at
# nested directories, e.g. if you do
#
# alias r: u:/c/some/long/path
#
# then clicking on drive r: puts you into the folder c:/some/long/path

# The "sln" command may be used to create "links" on drive U:. If
# u:/foo is a link to c:/bar, then u:/foo/foo.txt is another way
# of saying c:/bar/foo.txt. Judicious use of links can make
# re-arranging hard disks and directories painless (if you always
# use the names on drive u:, it doesn't matter where you put
# the actual directories).

# Setting up the root filesystem for UNIX environment
#
# WARNING: directories listed in the left column must really exist!

#
# Set symbolic links to drive u:.
#
sln d:\usr	u:\usr
sln d:\bin	u:\bin
sln d:\etc      u:\etc
sln d:\home     u:\home
sln d:\tmp      u:\tmp
sln d:\var      u:\var
sln d:\sbin	u:\sbin
sln c:\         u:\boot
sln d:\root     u:\root


# Some people want also to do this:

#sln u:/pipe/pty.A u:/dev/pty.A 
#sln u:/pipe/pty.B u:/dev/pty.B 
#sln u:/pipe/pty.C u:/dev/pty.C 
#sln u:/pipe/pty.D u:/dev/pty.D 
#sln u:/pipe/pty.E u:/dev/pty.E 
#sln u:/pipe/pty.F u:/dev/pty.F 
#sln u:/pipe/pty.G u:/dev/pty.G 
#sln u:/pipe/pty.H u:/dev/pty.H 
#sln u:/pipe/pty.I u:/dev/pty.I 
#sln u:/pipe/pty.J u:/dev/pty.J 
#sln u:/pipe/pty.K u:/dev/pty.K 

sln u:/ram      u:/tmp

# PCONVERT and UNIXMODE variables control some internals of
# MiNT Library.
#
# FreeMiNT 1.16.0 sets these two below automatically.
# Default values are as below.

setenv SDL_VIDEODRIVER gem

setenv TMPDIR u:/ram
setenv TEMP u:/ram
setenv TMP u:/ram
setenv PCONVERT PATH,HOME,SHELL
setenv PATH c:\;c:\mint;c:\mint\xaaes;c:\fvdi;c:\utils\ztask;c:\utils\toswin2;u:/bin;u:/sbin;u:/usr/bin
setenv SLBPATH c:/mint/slb
setenv OLGAMANAGER u:/c/utils/olga.app
setenv SDMASTER c:/mint/shutdown/gemhalt.prg
setenv TOSRUN c:/utils/toswin2/tw-call.app
setenv HOME u:\home
setenv USERNAME root
setenv HOSTNAME Aranym

# Examples follow
#
# Notice you have to adjust commands below for your filesystem 
# structure.
#
# You could use "alias" to provide a quick way of getting at
# nested directories, e.g. if you do
# alias r: u:/c/some/long/path
# then clicking on drive r: puts you into the folder c:/some/long/path

alias r: u:/ram

#
exec c:\auto\zmagxsnd.prg
exec c:\fvdi\fvdi.prg
exec c:\fvdi\clocky.prg
exec c:\fvdi\bconout.prg
exec c:\auto\ldg.prg
exec c:\auto\auto_tl.prg

#
# The "echo" command is really straightforward.
#
echo Setting up network interfaces...
exec u:\sbin\ifconfig lo0 addr 127.0.0.1 up
exec u:\bin\bash /sbin/eth0-config.sh
echo done...
echo starting syslogd...
exec u:\usr\sbin\syslogd
echo done...
#

echo Setup complete, now booting the system...
echo
