GG-Lite-1.0 (m68k Amiga release)
---------------------------------
---
Geek Gadgets Lite was initially created as a compact GNU CC environment to
help Amiga fans start coding in C programming language. The main advantage
of the package is that you do not need to install anything, nor you need
to have super-extra OS installation. All it takes is just a Workbench 3.x
floppy disk and around 70 megabytes of storage if whole package is to be
installed. Less(apx. 30 megabytes) is needed if you want just the compiler.
Although package is really aimed at being used with 'qdev' so that quick
and easy, native software development is possbile it does not contain it!
The reason for that is 'qdev' is still under heavy development plus does
not really requires you to install it. This is because per branch isolated
usage is essentially possible.
Geek Gadgets Lite consists of 3 archives where the very first one is the
most important:
GG-Lite-1.0-bin-m68k.lha - Base archive that contains minimalistic GNU CC
and friends(including headers and libs).
----------------------------------------------
AmiTCP-SDK-4.3.lha
apurify_v1.5.lha
binutils-2.7-bin.lha
CGraphX-DevKit.lha
diffutils-2.7-bin.tgz
fd2pragma.lha
fileutils-4.0-bin.tgz
findutils-4.1-bin.tgz
gcc-2.95.3-4-bin.tgz
GccFindHit-1.2.1-bin.tgz
gdb-4.16-bin.tgz
guigfxlib.lha
gzip-1.2.4-bin.tgz
hackyheaders.lha
hunk2aout-2.0-bin.tgz
ixemul-48.3-bin-m68k.lha
KingCON_1.3.lha
lha-2.1.lha
libamiga-bin.tgz
libm-5.4-bin.tgz
libnix-2.0-bin.tgz
make-3.81-bin-m68k.lha
MMULib.lha
nano-1.2.5-bin-m68k.lha
NDK39.lha
pdksh-5.2.12-bin.tgz
PhxAss.lha
pth-2.0.7-2-bin-m68k.lha
renderlib.lha
sh-utils-1.16-bin.tgz
tar-1.12-bin.tgz
textutils-1.22-bin.tgz
GG-Lite-1.0-doc-m68k.lha - Reference manuals of all programs, tutorials,
examples, NDK and reader binaries.
----------------------------------------------
gcc-faq_0.7.lha
groff-1.11a-bin.tgz
less-321-bin.tgz
manutils-2.1-bin.tgz
<...>
GG-Lite-1.0-net-m68k.lha - AmiTCP 3.0b2 release prepared to work out of
the box with minimal alterations necessary.
----------------------------------------------
3c589.lha
AmiTCP-bin-30b2.lha
CardPatch.lha
CardReset.lha
cnetdevice.lha
lynx-2.8.7-bin-m68k.lha
nicfeed.lha
As you can see "lastest-version-is-not-always-the-best" route was taken. It
is not only bacause of this, but simply there is no newer packages around.
But anyway if you are experienced user and your knowledge on Amiga stuff is
excellent then you can skip on documentation, also if you do not have home
network nor access to the Internet then the last package can be ommitted
too. Note however that having a functional loop interface is a good thing
in general, so it is worth to install the network stack and disable all
physical interfaces.
To install the environment just download all the packages, unpack them and
move the contents from '#?-doc-#?' and '#?-net-#?' to '#?-bin-#?'. You are
done at this point. Now visit the 'GG-Lite-?.?-bin-m68k/GG/' from Workbench
and double click 'GG_Shell'. Korn shell prompt should show up. Compiler is
all ready at that time and you can start coding with 'nano' text editor
which is a very intuitive thing :-) . If network is needed then please edit
the 'startnet' script and specify your ADDR(an IP address of your Amiga)
and GATEWAY(address of your router or computer that does the NAT). You will
also need to select network interface that is under IFACE. Included are
Ethernet PCMCIA most popular drivers plus the default A2065 ZorroII driver.
If your NIC is not supported by this small subset then install the driver
in 'Devs/Networks' and add proper entry in 'db/interfaces' and go back to
'startnet'.
Last update: 6-Jan-2013
---
NOTES:
[*]
Requires 68020(no FPU)+, OS 3.0+, 8+ MiB of free memory, Workbench 3.x disk
[*]
Very important! If you are 68040/68060 turbo board user and you do not have
support library in 'Libs:' then do something like this,
cd GG-Lite-?.?-bin-m68k/
copy Libs/mmu.library Libs:
copy Libs/680??.library Libs:
copy Devs/MMU-Configuration Devs:
and reboot asap. This will make sure that the CPU features and its caches
are being used properly. Without this your system will be unstable!
[*]
Please do not copy all other OS components from 'Libs', 'Devs', 'L' and
'Prefs' to your 'SYS:' partition they will be assigned automatically during
'gg_init'!
[*]
Please note that OS/Workbench 2.x boot diskette is unsuitable! Package
programs will most likely crash probably due to differences in MathIEEE
libraries! In theory you could load V38 libraries residently and reboot and
it should work but i did not test that!
[*]
All the 'proto/' and 'inline/' were regenerated with 'fd2pragma' tool for
GCC so that no 'libamiga.a' glue is necessary, but all direct 'alib' calls
will reference that library!
[*]
If you need network then please edit 'BIN:startnet' script and fill in your
details. By default no physical interface is to be put online so only the
'lo0' will be active. Remeber that if the TCP/IP stack is running before
you 'gg_init' then no GG-Lite network will ever be configured!
[*]
For your convinience '#?-net-#?' includes 'lynx' web browser so you can get
things from Internet as well as browse locally stored web sites.
[*]
Default DNS server can be found in 'db/netdb' under NAMESERVER specifier.
If you experience problems with Level 3 - 4.2.2.2 then try the Google
- 8.8.8.8 one.
[*]
No wireless network cards are supported because 'prism2.device' is still
too unstable. If you desperately need WLAN then disable 'nicfeed' in
'startnet' so that the driver(it really does not like to be put offline)
will not crash your machine that soon...
[*]
When in doubt use 'multiview' or 'man' to get help. All the programs in the
archive come with the documentation.
[*]
Please note that packages utilised were copied minimalistically, which is
to say only the essential parts were taken! All the sources can be found on
the net.
[*]
Be aware that most GG programs accept UNIX-like paths, so 'RAM:' should be
written as '/RAM/', also Amiga denesting '/' must be typed as '../'. Local
files should be requested with './<file>'.
[*]
If you can put your hands on an "Amiga Developer CD 2.1" then you are home
and the Amiga development will no longer be heavy wizardy to you. Try to
Google, CD images are floating around.
[*]
As to binaries, startup codes and static link libraries 68020 flavours rule
the package. The 'libpthread.a' library is the HSCM one so you can code
with no worries about context switches.
[*]
In the '#?-doc-#?' archive aside reference manuals you will also find some
nice tutorials regarding GCC and GDB.
[*]
Aside 'nano' which was rebuilt to work on non-FPU setup there is also 'ame'
a GUI based MicroEmacs clone taken from DiceC package.
[*]
Feel free to hack on this package and try to make it even smaller if that
is possible at all. But please maintain full functionality! At this time
all the dependencies are met so i have no idea, beside binary compression
which i want to avoid how to make it smaller. Anyway, if you see that
something can be done better please tell me about it. Thanks!
---
LINKS:
http://aminet.net/ Biggest Amiga software repository.
http://cd.textfiles.com/ All rare CD ISOs are just there.
http://bombjack.org/commodore/ Lots of scanned books and mags.
http://amiga-stuff.com/ Old Amiga software site and more.
http://mways.co.uk/amiga/ Nice set of tutorials on coding.
http://w3.norman-interactive.com/ German fan site devoted to coding.
http://www.amigacoding.com/ Lots of informational material.
http://www.amigacoding.de/ Amiga Development Info Center.
http://sf.net/directory/os:amigaos/ Free/open source Amiga projects.
http://codewiz.org/projects/amiga/ Amiga Freeware Productions site.
http://back2roots.org/ Your one stop for oldschool stuff.
http://planetemu.net/ Emulators, tools and the like.
http://www.faqs.org/faqs/amiga/ Certain FAQs on Amiga and coding.
http://groups.google.com/ Google remebers the good old days.
http://oldwww.nvg.ntnu.no/amiga/ Old Amiga-FAQ by Ignaz Keller.
http://amiga.org/ Amiga community portal and forums.
---
USAGE:
; Amiga shell use (do not forget about the stack!)
cd GG-Lite-?.?-bin-m68k/GG/
execute gg_init
changetaskpri -10
stack 131072
cd home:
gcc -g -m68020-60 -Wall hello.c -o hello
hello
; Enter the debugger to sniff on the program flow
gdb hello
; Edit the source code with 'nano' con text editor
nano hello.c
---
megacz
|