diff --git a/sys/amiga/README.amiga b/sys/amiga/README.amiga index cc83a832d..436a4aea4 100644 --- a/sys/amiga/README.amiga +++ b/sys/amiga/README.amiga @@ -3,9 +3,9 @@ Requirements ------------ - - AmigaOS 3.0 or later (Kickstart 39+) - - 6 MB free RAM minimum (8 MB recommended) - - Hard drive with ~5 MB free space + - AmigaOS 3.0 or later (Kickstart 39+) + - 6 MB free RAM minimum (8 MB recommended) + - Hard drive with ~5 MB free space Recommended: RTG graphics card (Picasso96/CyberGraphX) for best tile rendering. Native AGA/OCS/ECS chipsets are supported. @@ -13,56 +13,62 @@ tile rendering. Native AGA/OCS/ECS chipsets are supported. Installation ------------ -Extract NH370AMI.ZIP to a directory and assign it: +Extract NH500AMI.ZIP somewhere on your hard drive (e.g. into Work:). +You'll get a NetHack drawer with everything inside. - assign NetHack: +To play from Workbench, open the NetHack drawer and double-click the +nethack icon. -The directory should contain: - nethack - game binary - nhdat - data library - symbols - symbol set definitions - sysconf - system configuration - nethack.cnf - game options - hack.font - font descriptor - hack/8 - font bitmap (8pt) - tiles/tiles16.iff - 16-color tiles (OCS/ECS) - tiles/tiles32.iff - 32-color tiles (AGA/RTG) - tomb.iff - tombstone image - record - high score file +To play from a Shell: -To play: - cd NetHack: - nethack + Work:NetHack/nethack + +To redirect to a different install -- for example to test two versions +side by side -- set the NETHACKDIR (or HACKDIR) environment variable +before launching: + + setenv NETHACKDIR Work:games/nethack-dev/ + Work:games/nethack-dev/nethack Display Modes ------------- -Two display modes are available, selected in nethack.cnf: - - Text mode (AMII): - OPTIONS=symset:AmigaFont - - Tile mode (AMIV): - OPTIONS=windowtype:amiv +The shipped nethack.cnf selects tile mode (AMIV). AMIV needs a screen +with at least 4 bitplanes (16 colours) and ~384 KB free chip RAM; on +machines that don't qualify, the binary automatically falls back to +text mode (AMII) at startup with a short note explaining why. Tile mode auto-selects tiles32.iff (32 colors, 5 bitplanes) when the screen supports 32+ colors, otherwise tiles16.iff (16 colors, 4 planes). +To force text mode unconditionally, edit nethack.cnf: + + #OPTIONS=windowtype:amiv + OPTIONS=windowtype:amii + OPTIONS=symset:AmigaFont + Configuration ------------- -Edit nethack.cnf for game options. Key settings: +Edit nethack.cnf for game options. Defaults shipped: - OPTIONS=windowtype:amiv - tile graphics (default) - OPTIONS=symset:AmigaFont - text mode with line-drawing chars - OPTIONS=menucolors - colored inventory items - OPTIONS=time,lit_corridor - show turn count, lit corridors - OPTIONS=boulder:0 - display boulders as '0' + OPTIONS=windowtype:amiv - tile graphics + OPTIONS=number_pad:1 - numpad movement; '5' is run prefix + OPTIONS=time,showexp - turn count, experience visible + OPTIONS=lit_corridor - show lit corridors + OPTIONS=menucolors - colored inventory items -Menu color examples (add after OPTIONS=menucolors): - MENUCOLOR=" blessed "=green - MENUCOLOR=" cursed "=red - MENUCOLOR=" uncursed "=cyan +ALT+letter shortcuts to extended commands (ALT+L for #loot, ALT+F for +#force, etc.) are enabled by default. On keymaps that need ALT for +typing characters (Scandinavian, German, French, ...) disable with: + + OPTIONS=!altmeta + +Menu color examples (after OPTIONS=menucolors): + + MENUCOLOR=" blessed "=green + MENUCOLOR=" cursed "=red + MENUCOLOR=" uncursed "=cyan Building from Source @@ -79,18 +85,19 @@ Cross-compilation from Linux using bebbo's m68k-amigaos-gcc toolchain make CROSS_TO_AMIGA=1 all make CROSS_TO_AMIGA=1 package -The distribution ZIP is created at targets/amiga/NH370AMI.ZIP. +The distribution ZIP is created at targets/amiga/NH500AMI.ZIP. Toolchain requirements: - - m68k-amigaos-gcc (bebbo's amigaos-cross-toolchain in /opt/amiga) - - -noixemul (libnix) for linking - - -m68000 for maximum compatibility (or -m68020/040/060) + + - m68k-amigaos-gcc (bebbo's amigaos-cross-toolchain in /opt/amiga) + - -noixemul (libnix) for linking + - -m68000 for maximum compatibility (or -m68020/040/060) Known Issues ------------ - - Native Amiga compilation (SAS/C, DICE) is not supported; - cross-compilation with GCC is required + - Native Amiga compilation (SAS/C, DICE) is not supported; + cross-compilation with GCC is required Credits diff --git a/sys/amiga/drawer-info.uu b/sys/amiga/drawer-info.uu new file mode 100644 index 000000000..cddf5a258 --- /dev/null +++ b/sys/amiga/drawer-info.uu @@ -0,0 +1,17 @@ +begin 644 NetHack.info +MXQ```0`````!HP`/`#D`#@`&``$``0`SE&``-K,H```````````````````` +M```!`@```````````(````"``````#!?4````````!```+@`30%R`$K__P`` +M```"`!!_`#:X9@``````+N.D````````````7@!!_____P`!```````````` +M`````#D`#@`"``%O4`,`````````````````#_______Y``,```````$``@` +M`````"0`"``)_R``)``(``G5(``D``@`"``@`"0`"``'_\``)``(```````D +M``G______^0`````````!``/_______\```````````````````````_____ +M___X`#```````!@`,_______^``W_______8`#?_]@#?_]@`-__V*M__V``W +M__?_W__8`#?_^``__]@`-_______V``V```````8`#________@````````` +M```````````````````````````````Y``X``@`!<#`#```````````````` +M``_______^0`&JJJJJJJM``U5555555<`'________P`0```````!`!````` +M```&`$``"?\@``8`0``)U2``!H!```@`(``&@$``!__```:`0```````!H!_ +M_______^@`*JJJJJJJJ`/_______^``P```````8`"*JJJJJJJ@`!5555555 +M4````````````#________@`/_______^``___8`W__X`#__]BK?__@`/__W +K_]__^``___@`/__X`#________@```````````````````````````$````` +` +end diff --git a/sys/amiga/readme-info.uu b/sys/amiga/readme-info.uu new file mode 100644 index 000000000..9b819be15 --- /dev/null +++ b/sys/amiga/readme-info.uu @@ -0,0 +1,35 @@ +begin 644 README.amiga.info +MXQ```0``````#P!(`"<`(P`&``$``4`&_1A`!QW@```````````````````` +M```!!`!`!QWX!X8V<(````"``````````````````!`````````G`",``T`' +M(S`'```````````$```````%````'``$@```.``$0```\``$(```8``$$``` +M0``'^``````![```````#@`!___`!@``````!@`!____A@`0````!@`!___^ +M!@``````!@`!_\``!@``````!@``````!@`!____A@``````!@`!___\!@`0 +M````!@`!____!@``````!@`!___P!@``````!@`!___^!@``````!@`````` +M!@`!_```!@``````!@``````!@``````!@#______@#______@#____X``#_ +M___[``#_[__[@`#_W__[P`#^/__[X`#_?__[\`#____[^`#____^"`#_____ +M\@#_I*J_^@#_____^@#_BPBB>@#O____^@#_(DBE^@#_____^@#_2G__^@#_ +M____^@#_____^@#_B2J*>@#_____^@#_(E$3^@#O____^@#_F15$^@#_____ +M^@#_(DBO^@#_____^@#_-(15^@#_____^@#_____^@#^D___^@#_____^@#_ +M____^@#_____^@```````@#______@`````&```````$@```&``$0```,``$ +M(``!X``$$```P``$"``````$```````!\```````"```6U5````````````` +M=/==@```````````W;=:````````````M8``````````````````````=M5U +M@```````````W:[L````````````9NJ[````````````W;=0```````````` +MRWNJ```````````````````!;`````````````````````````````"````` +M`````````````````"<`(P`#0`Z[``(```````(!NVZT``(`` +M`````(!:P````(```````(```````(`[:KK``(```````(!NUW8``(`````` +M`(`S=5V``(```````(!NVZ@``(```````(!EO=4``(```````(```````("V +M`````(```````(```````(```````,```````````!)365,Z5&]O;',O161I +.=%!A9``````(`````0`` +` +end diff --git a/sys/unix/hints/include/cross-post.500 b/sys/unix/hints/include/cross-post.500 index 23d96312c..512906d8f 100644 --- a/sys/unix/hints/include/cross-post.500 +++ b/sys/unix/hints/include/cross-post.500 @@ -310,24 +310,27 @@ UUDECODE = ../util/uudecode $(CC) $(CFLAGS) -o $@ $< amigapkg: $(AMITILES) ../util/uudecode - mkdir -p $(TARGETPFX)pkg/tiles $(TARGETPFX)pkg/hack - cp $(GAMEBIN) $(TARGETPFX)pkg/nethack - cp ../dat/nhdat $(TARGETPFX)pkg/nhdat - cp ../dat/license $(TARGETPFX)pkg/license - cp ../dat/symbols $(TARGETPFX)pkg/symbols - cp $(TARGETPFX)tiles16.iff $(TARGETPFX)pkg/tiles/tiles16.iff - cp $(TARGETPFX)tiles32.iff $(TARGETPFX)pkg/tiles/tiles32.iff - cp $(TARGETPFX)tomb.iff $(TARGETPFX)pkg/tomb.iff - cp ../doc/nethack.txt $(TARGETPFX)pkg/nethack.txt - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/amifont8.uu && mv 8 hack/8 ) - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/amifont.uu ) - cp $(AMISRC)/nethack.cnf $(TARGETPFX)pkg/nethack.cnf - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/NHinfo.uu ) - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/cnf-info.uu ) - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/license-info.uu ) - ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/txt-info.uu ) - touch $(TARGETPFX)pkg/record - ( cd $(TARGETPFX)pkg && zip -9r ../NH$(NHV)AMI.ZIP * ) + mkdir -p $(TARGETPFX)pkg/NetHack/tiles $(TARGETPFX)pkg/NetHack/hack + cp $(GAMEBIN) $(TARGETPFX)pkg/NetHack/nethack + cp ../dat/nhdat $(TARGETPFX)pkg/NetHack/nhdat + cp ../dat/license $(TARGETPFX)pkg/NetHack/license + cp ../dat/symbols $(TARGETPFX)pkg/NetHack/symbols + cp $(TARGETPFX)tiles16.iff $(TARGETPFX)pkg/NetHack/tiles/tiles16.iff + cp $(TARGETPFX)tiles32.iff $(TARGETPFX)pkg/NetHack/tiles/tiles32.iff + cp $(TARGETPFX)tomb.iff $(TARGETPFX)pkg/NetHack/tomb.iff + cp ../doc/nethack.txt $(TARGETPFX)pkg/NetHack/nethack.txt + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/amifont8.uu && mv 8 hack/8 ) + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/amifont.uu ) + cp $(AMISRC)/nethack.cnf $(TARGETPFX)pkg/NetHack/nethack.cnf + cp $(AMISRC)/README.amiga $(TARGETPFX)pkg/NetHack/README.amiga + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/NHinfo.uu ) + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/cnf-info.uu ) + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/license-info.uu ) + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/txt-info.uu ) + ( cd $(TARGETPFX)pkg/NetHack && ../../../../util/uudecode ../../../../sys/amiga/readme-info.uu ) + ( cd $(TARGETPFX)pkg && ../../../util/uudecode ../../../sys/amiga/drawer-info.uu ) + touch $(TARGETPFX)pkg/NetHack/record + ( cd $(TARGETPFX)pkg && zip -9r ../NH$(NHV)AMI.ZIP NetHack NetHack.info ) @echo amiga package zip file $(TARGETPFX)NH$(NHV)AMI.ZIP endif # CROSS_TO_AMIGA