#       $NetBSD: MDINSTALL,v 1.38 2023/08/30 20:17:06 andvar Exp $

#
# INSTALL kernel for ramdisk installation
#

include "arch/amiga/conf/std.amiga"

#options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary

maxusers        8
options         RTC_OFFSET=0

#
# mainboards to support (in addition to Amiga)
#
options         DRACO
options         BB060STUPIDROM  # You need this, if you have a non-DraCo
                               # MC68060 with an OS ROM up to (at least)
                               # V40 (OS3.1) and want to boot with the
                               # bootblock.
                               # You do not need this if you have a DraCo,
                               # have no 68060 or NEVER use the bootblock
#
# processors this kernel should support
#
options         M68060          # support for 060
options         M060SP          # MC68060 software support (Required for 060)
options         M68040          # support for 040
options         FPSP            # MC68040 floating point support
options         M68030          # support for 030
options         M68020          # support for 020/851
options         FPU_EMULATE     # FPU emulation
#
# Networking options
#
options         INET            # IP networking support (Required)
options         PPP_BSDCOMP     # BSD-Compress compression support for PPP
options         PPP_DEFLATE     # Deflate compression support for PPP
options         PPP_FILTER      # Active filter support for PPP (requires bpf)

# Filesystems
file-system     FFS             # Berkeley fast file system
file-system     MFS             # Memory based filesystem
file-system     NFS             # Network File System client side code
file-system     ADOSFS          # AmigaDOS file system
file-system     CD9660          # ISO 9660 + Rock Ridge filesystem
file-system     MSDOSFS         # MS-DOS filesystem
file-system     KERNFS          # kernel data-structure filesystem
file-system     PTYFS           # /dev/pts/N support

options         FFS_NO_SNAPSHOT # No FFS snapshot support

#
# Support for various kernel options
#
options         KTRACE          # system call tracing support
#options        INSECURE        # disable kernel security levels
options         SCSIVERBOSE     # human readable SCSI error messages
options         NTP             # NTP phase/frequency locked loop
options         USERCONF        # userconf(4) support
options         PIPE_SOCKETPAIR         # smaller, but slower pipe(2)
#options        SYSCTL_INCLUDE_DESCR    # Include sysctl descriptions in kernel

#
# Misc. debugging options
#
options         DDB             # Kernel debugger
pseudo-device   ksyms
#options        DDB_HISTORY_SIZE=100    # Enable history editing in DDB
options         DIAGNOSTIC      # Extra kernel sanity checks
#options        DEBUG           # Enable misc. kernel debugging code
#options        SYSCALL_DEBUG   # debug all syscalls.
#options        SCSIDEBUG       # Add SCSI debugging statements
#options        PANICBUTTON     # Forced crash via keypress (?)

#
# Amiga specific options
#
#options        LIMITMEM=24     # Do not use more than LIMITMEM MB of the
                               # first bank of RAM. (default: unlimited)

# ATTENTION: There is NO WARRANTY AT ALL that the sync will be complete
# before the 10 secondinterval ends, or that KBDRESET does work at all.
#options        KBDRESET        # sync on Ctrl-Amiga-Amiga

# These options improve performance with the built-in serial port
# on slower Amigas.  Try the larger buffers first then lev6_defer.
#options        SERIBUF_SIZE=4096
#options        SEROBUF_SIZE=32
#options        LEV6_DEFER      # defers l6 to l4 (below serial l5)

options         RETINACONSOLE   # enable code to allow retina to be console
options         ULOWELLCONSOLE  # enable code to allow a2410 to be console
options         CL5426CONSOLE   # Cirrus console
options         CV64CONSOLE     # CyberVision console
options         TSENGCONSOLE    # Tseng console
options         CV3DCONSOLE     # CyberVision 64/3D console

options         GRF_ECS         # Enhanced Chip Set
options         GRF_NTSC        # NTSC
options         GRF_PAL         # PAL
options         GRF_A2024       # Support for the A2024
options         GRF_AGA         # AGA Chip Set
options         GRF_AGA_VGA     # AGA VGAONLY timing
options         GRF_SUPER72     # AGA Super-72
#options        KFONT_8X11      # 8x11 font

# select a font for the console according to the character set and keymap
# you want to use
options        KFONT_CONS_ISO8859_1
#options         KFONT_CONS_ISO8859_2

# This is how you would tell the kernel the A2410 oscillator frequencies:
# The used frequencies are the defaults, and do not need option setting
#options        ULOWELL_OSC1=36000000
#options        ULOWELL_OSC2=66667000

# This is how you specify the blitting speed, higher values may speed up blits
# a little bit.  If you raise this value too much some trash may appear.
# the commented version is the default.
#options        RH_MEMCLK=61000000
# this option enables the 64 bit sprite which does not work
# for quite a few people.  E.g. The cursor sprite will turn to a block
# when moved to the top of the screen in X.
#options        RH_64BIT_SPRITE
# enables fast scroll code appears to now work on 040 systems.
#options        RETINA_SPEED_HACK
# enables the Hardwarecursor which does not work on some systems.
#options        RH_HARDWARECURSOR

p5bus0          at zbus0                # Phase5 CSPPC/BPPC internal bus

grfcc0          at mainbus0             # custom chips
grfrt0          at zbus0                # retina II
grfrh0          at zbus0                # retina III
grfcl*          at zbus0                # Picasso II/Piccolo/Spectrum
grful0          at zbus0                # A2410
grfcv0          at zbus0                # CyberVision 64
grfet*          at zbus0                # Tseng (oMniBus, Domino, Merlin)
grfcv3d0        at zbus0                # CyberVision 64/3D

grf0            at grfcc0
grf1            at grfrt0
grf2            at grfrh0
grf3            at grfcl?
grf4            at grful0
grf5            at grfcv0
grf6            at grfet?
grf7            at grfcv3d0

ite0            at grf0                 # terminal emulators for grfs
ite1            at grf1                 # terminal emulators for grfs
ite2            at grf2                 # terminal emulators for grfs
ite3            at grf3                 # terminal emulators for grfs
ite4            at grf4                 # terminal emulators for grfs
ite5            at grf5                 # terminal emulators for grfs
ite6            at grf6                 # terminal emulators for grfs
ite7            at grf7                 # terminal emulators for grfs

msc0            at zbus0                # A2232 MSC multiport serial.
mfc0            at zbus0                # MultiFaceCard I/O board
mfcs0           at mfc0 unit 0          # MFC serial
mfcs1           at mfc0 unit 1          # MFC serial
#mfcp0          at mfc0 unit 0          # MFC parallel [not available yet]
#mfc1           at zbus0                # MultiFaceCard 2nd I/O board
#mfcs2          at mfc1 unit 0
#mfcs3          at mfc1 unit 1
#mfcp1          at mfc1 unit 0

hyper*          at zbus?                # zbus HyperCom3 + HyperCom4
#hyper*         at mainbus0             # not yet: HyperCom1 + HyperCom3
com*            at hyper? port ?        # Hypercom3/4 serial ports
#lpt*           at hyper? port ?        # not yet: Hypercom3 parallel port

#
# Amiga Mainboard devices (sans graphics and keyboard)
#

ser0            at mainbus0             # Amiga onboard serial
par0            at mainbus0             # Amiga onboard parallel
ms*             at mainbus0             # Amiga mice
fdc0            at mainbus0             # Amiga FDC
fd*             at fdc0 unit ?          # floppy disks on the later
a34kbbc0        at mainbus0             # A3000/A4000 battery backed clock
a2kbbc0         at mainbus0             # A2000 battery backed clock
aucc*           at mainbus0             # Amiga CC audio
audio*          at aucc?

spkr*           at audio?               # PC speaker (synthesized)

#
# DraCo Mainboard devices (sans keyboard)
#

drbbc0          at mainbus0             # DraCo battery backed clock
drsupio0        at mainbus0             # DraCo superio chip
com*            at drsupio? port ?      # DraCo serial
lpt0            at drsupio? port ?      # DraCo parallel

#
# Zorro-II, Zorro-III, DraCo Direct-Bus devices (sans graphics)
#

# Ethernet cards:
le*             at zbus0                # A2065, Ameristar, Ariadne
ne*             at zbus0                # AriadneII
ed*             at zbus0                # Hydra, ASDG LanRover
es*             at zbus0                # CEI A4066 EthernetPLUS
qn*             at zbus0                # Quicknet

# Arcnet
bah*            at zbus0                # C=/Ameristar A2060 / 560

# Greater Valley Product Bus
gvpbus*         at zbus0

# scsi stuff, all possible
gtsc0           at gvpbus?              # GVP series II scsi
scsibus*        at gtsc0
ahsc0           at mainbus0             # A3000 scsi
scsibus*        at ahsc0
atzsc0          at zbus0                # A2091 scsi
scsibus*        at atzsc0
wstsc0          at zbus0                # Wordsync II scsi
scsibus*        at wstsc0
ivsc0           at zbus0                # IVS scsi
scsibus*        at ivsc0
mlhsc0          at zbus0                # Hacker scsi
scsibus*        at mlhsc0
otgsc0          at zbus0                # 12 gauge scsi
scsibus*        at otgsc0
zssc0           at zbus0                # Zeus scsi
scsibus*        at zssc0
mgnsc0          at zbus0                # Magnum scsi
scsibus*        at mgnsc0
wesc0           at zbus0                # Warp Engine scsi
scsibus*        at wesc0
bppcsc0         at p5bus0               # BlizzardPPC 603e+ scsi
scsibus*        at bppcsc0
afsc0           at zbus0                # A4091 scsi
scsibus*        at afsc0
aftsc0          at mainbus0             # A4000T scsi
scsibus*        at aftsc0
flsc0           at zbus0                # FastlaneZ3 scsi
scsibus*        at flsc0
bzsc0           at zbus0                # Blizzard 1230 I,II scsi
scsibus*        at bzsc0
bzivsc0         at zbus0                # Blizzard 12x0 IV scsi
scsibus*        at bzivsc0
bztzsc0         at zbus0                # Blizzard 2060 scsi
scsibus*        at bztzsc0
cbsc0           at zbus0                # CyberSCSI I
scsibus*        at cbsc0
cbiisc0         at zbus0                # CyberSCSI II
scsibus*        at cbiisc0
cbiiisc0        at p5bus0               # Cyberstorm mk.III/Cyberstorm PPC SCSI
scsibus*        at cbiiisc0
empsc0          at zbus0                # Emplant scsi
scsibus*        at empsc0
wdc0            at mainbus0             # A4000 & A1200 IDE bus
atabus*         at wdc? channel ?       # ATA bus
wd*             at atabus? drive ?      #  + drives
atapibus*       at atabus?              # ATAPI bus
cd*             at atapibus? drive ?    # ATAPI CD-ROM drives
sd*             at atapibus? drive ?    # ATAPI disk drives

drsc0           at mainbus0             # DraCo scsi
scsibus*        at drsc0


# each hard drive from low target to high
# will configure to the next available sd unit number
sd*     at scsibus? target ? lun ?      # scsi disks
st*     at scsibus? target ? lun ?      # scsi tapes
cd*     at scsibus? target ? lun ?      # scsi cds

pseudo-device   loop                    # loopback network interface
pseudo-device   sl                      # SLIP network interfaces
pseudo-device   ppp                     # PPP network interfaces

pseudo-device   view            10      # views
pseudo-device   pty                     # pseudo-terminals

pseudo-device   vnd                     # vnode pseudo-disks

#options        RND_COM                 # use "com" randomness as well (BROKEN)

config  netbsd root on ? type ?

# Enable the hooks used for initializing the root memory-disk.
options         MEMORY_DISK_HOOKS
options         MEMORY_DISK_IS_ROOT     # force root on memory disk
options         MEMORY_DISK_SERVER=0    # no userspace memory disk support
options         MEMORY_DISK_ROOT_SIZE=2048      # size of memory disk, in blocks
options         MEMORY_DISK_RBFLAGS=RB_SINGLE   # boot in single-user mode

pseudo-device   md                      # memory disk [ramdisk]