README.AMIGA
1 Compiling CircleMUD on the Amiga 2 Written by Damian Jurzysta <boing@amigascne.org> 3 4 Compiling CircleMUD on the Amiga is basically the same as compiling it using 5 UNIX. What you need is: 6 7 * AmiTCP, INet225R2 or any other TCP/IP stack working with ixnet.library. 8 9 You can get the limited unregistered version of Miami from 10 http://www.nordicglobal.com. An old demoversion of AmiTCP 4.0 can be found on 11 AmiNet (ftp://ftp.aminet.org/pub/aminet/comm/tcp/AmiTCP-demo-40.lha). 12 13 * An installed and fully functional Geek Gadgets programming environment with 14 Autoconf installed. I've managed to compile and run CircleMUD using the 15 971125, 980523 and 990529 snapshots using GCC 2.7.2 and EGCS 1.1b-1.2. 16 The latest EGCS is always the optimal choice. 17 18 This can be found at ftp://ftp.ninemoons.com/pub/geekgadgets. 19 Installing this is a bit tricky at first, I recommend reading the manual 20 first. It is located at http://www.ninemoons.com/GG/docs/GG_7.html. That 21 way you'll know what archives to download and install. 22 23 * 6 MB's of RAM, it might work with less but has not been tested. 24 25 You can find it at the local computerstore. :) 26 27 * A 68020 CPU or better is required, I've not been able to compile it without 28 specifying the -m68020 flag, therefor it won't run on a 68000 or 68010 CPU. 29 30 A1500, A2500, A3000, A4000 and A1200 all come with factoryinstalled 68020-040 31 CPU's. If you own an unexpanded Amiga not listed above you'll need to expand 32 it. 33 34 Here is how you compile this baby: 35 36 1) Open up a shell. 37 2) CD to the circle30bplXX directory. (where 'XX' is the current patchlevel) 38 3) Type "sh configure". 39 4) CD to the src directory. 40 5) Edit the Makefile file and add -m68020 to MYFLAGS. 41 6) Edit the config.c file and replace "const char *LOGNAME = NULL;" with 42 "const char *LOGNAME = "log/syslog";". If you don't do this, logging 43 won't be working properly. 44 7) CD to the util directory and repeat step 5. 45 8) Due to a buggy/non-functional/missing implementation of HAS_RLIMIT in 46 ixemul.library/Geek Gadgets you need to edit sysdep.h and remove or comment 47 the definition of HAS_RLIMIT on line 324 saying "#define HAS_RLIMIT". 48 9) CD back to the src directory. 49 10) Type "make all". 50 51 If you want to optimize the binary executable, change MYFLAGS to correspond 52 with your current processor (-m68020, -m68030, -m68040 or -m68060) and FPU 53 (-m68881). The -m68060 option is not included in GCC 2.7.2, only in EGCS 1.1+. 54 Also add -O3 to MYFLAGS to activate maximum optimization and inlining. I'm not 55 sure -O3 is working with GCC 2.7.2, if you get compiler errors replace it with 56 -O2. Finally, remove -g and -O2 from CFLAGS to remove debugging information and 57 to avoid the above -O3 (or -O2 if you're using GCC 2.7.2) to collide with this 58 flag. 59 60 To run the server all you need to do is follow these five simple steps: 61 62 1) Make sure you have a TCP/IP stack running. You don't need to be connected to 63 the net, just leave it running. 64 2) Open up a shell. 65 3) Since the UNIX autorun kept crashing on my machine, I wrote my own autorun 66 script. If "sh autorun" isn't working for you, type "autorun.amiga". 67 4) If it says "file is not executable" when you try to run autorun.amiga, type 68 "protect autorun.amiga +es" and run it again. 69 5) To connect to it, use a telnet or MUD client and connect to localhost, port 70 4000. If you don't have one, use the one supplied with Geek Gadgets: 71 'telnet localhost 4000'. The first person to log in will be made an 72 implementor (level 34) with all powers. 73 74 You may want to read the README.UNIX file since most what is written in it also 75 complies to the Amiga Geek Gadgets environment. 76 77 If someone manages to compile it on a PowerPC processor, please contact me. 78 I don't own a PowerUP/G3/G4-board myself so I've not been able to test this. 79 80 If you have any questions or can't get it working, feel free to email me at 81 boing@amigascne.org.