Links to Linux & i586+ Assembly Programming & Doc's, sonst (fast) nichts...
Certainly not a comprehensive list but, a list of links which I found most helpful.
|
The ultimate Inet access "cleansing" tools:
WEB WASHER for Linux, MAC-OS, WIN*DOS, and
POP3-Filter.
"webcopy" is a
Perl program which
copies (parts of) the contents of entire web-sites, for about any OS type.
"wget"
can resume and doesn't early time out.
FTP Search by ARCHIE,
GOOGLE searches the web,
WOTSIT archive of data/file formats,
SANDPILE for x86 hardware.
Programme findet ARCHIE..pl,
GOOGLE durchsucht das Web,
WOTSIT hat Fileformate/Protokolle,
SANDPILE für x86-Hardware.
ARCHIE..pl ist frei von "Werbung" und
us-amerikanischer Rechtsaufsicht ("Zensur"?); erfolgreich auch bei eher versteckter rsp. idiotisch "lizensierter"
Weichware (glint &c).
"webcopy"
copiert Files oder ganze Web-Sites und ist als
Perl-Programm universell einsetzbar.
"wget"
nimmt abgebrochene Übertragungen wieder auf und übersteht Wartezeiten.
Inet ohne "Werbung": Den WEB-WASHER gibt es für Linux,
MAC-OS, WIN*DOS; und POP3-Filter sowieso.
For a start
- I never would have made it into linux assembly without the asmutils -
which rely on the "nasm assembler,
- I wouldn't have been able to assemble anything more than some simple utilities without the
ALD debugger,
- I would have had less trouble if right away beginning with AS and the binutils -
which those slovenly complied 'info' documents prevented...
- and, I certainly won't do w.o. the appropriate documentation, i.e. the
"Single Unix" specification and, cpu
specific reference manuals.
- an FAQ list and several tutorials provided at the "linuxassembly" site.
- before asking about Linux assembly, particulary when migrating from those
entirely different(!) PC-DOS style OS-s, pse, get the asmutils.
- AS is the highly reliable, 'native' Linux assembler
from the "binutils" package, supplied w. any decent Linux
distribution. In conjunction with the CPP praeprocessor I found it much superior to many
other such tools (e.g. "nasm") but, also fairly difficult to operate. - Which was due to
it's funny 'motel' syntax but, mainly, was a 'documentation' issue; i.e.
because of those carelessly compiled, FSF-style incomplete and almost un-readble text fragments
of it's "info system" AS won't instantly be easy to handle for stand-alone assembly.
I'd recommend thoroughly studying the rsp. 'dvi', postscript or, html format
docs' versions, for AS as well as LD and CPP (usually by CC -E); the
utterly confused "GNU-info system" most certainly won't supply any useable information
to a reader who is not already familiar with the particular, applicable documents.
Wrt genuine assembly mnemonics & syntax, as found in any competent x86 related
documentation, it might impose some considerable effort to working with the fairly
silly mixture of AS and "C"-ish habits, hybrid att-'syntax' and, those in-consistently
defined several other tools (CPP &c). But, once accustomed to these oddities, it
-imho- becomes the most capable and versatile assembler which can be safely relied upon,
orderly working and present in any Linux system.
"Programming from the Ground Up" (the 'pgubook') provides a high quality
document about x86/Linux AT&T syntax assembly w. much valuable information, dedicated to the
assembly programming novice but, for experienced asm-Programmer, too.
- fasm, a 'flat real (and protected) mode'
Intel syntax assembler for Linux and Win/DOS, itself programmed in assembly and thus, besides (almost)
'fully featured', is very compact and fast (alternate source).
Straight forwardly assembles plain ELF binaries and a few other formats.
But, "fasm" does not provide an assembly listing or a crosss/reference table.
- "shasm", "osimplay"
i386 assembler(s) in 'bash' words, texts and examples on OS building and many more thourough issues wrt
the i386 type processors - alternate address.
-
"nasm" sources and development site changing ever so often, so you might need
searching, yourself.
-
An overwiev and in-depth information.
-
- Asmutils interchangeability files,
adaptation to asmutils' versions and different lx kernels, extract from lib4th.
- Binutils
- The binutils
provide all, basic and required tools to assembling, linking and testing any sort of Linux binaries, ELF executeables,
shared libraries &c. For instance, the "as" assembler, "ld" linker, "objcopy"
file format converter, "objdump" disassembler &c, "strip", and many more.
- For some orderly ('readable') documentation I'd suggest getting the sources
distribution to compiling and converting the rsp. dvi and postscript documents.
- see also the pgubook AS novice tutorial.
- Debugger
-
ald
is a very easy to handle (extended man-page) interactive assembly
level debugger. A most helpful and very reliable utility, without which a non-trivial
project -imho- simply would not be possible to debug, at all - the alternative, "gdb",
is almost un-useably clumsy, at asm level.
Patch- & source replacement files for symbols
display while single-stepping (ALD 0.1.3).
modified (10/02): disassembly forced to 32bit mode while 'attached' (as until v0.1.1).
- Syscalls Tracing
- Programming Library
-
The asmutils provide libc &c substitutes and a collection of standard linux utilities.
-
libASM
package, sources, all "nasm" assembly.
Providing much information about kernel functions and system calls and,
access to the "X-Windows" system.
- X-Windows includes a 'real mode' x86 interface,
which can be found in the sources directory "xc/programs/Xserver/hw/xfree86/int10".
- lib4th implements a subroutine threaded native code compiling and interpreting
Forth system which thus can also serve as a comprehensive assembly routines' library.
- Algorithms Library
- PC Assembly Language
- Binutils 2.14.90 documentation, html files.
Wrt assembly there isn't much new in the more recent versions, those multiple digits
directionally referrable labels, which were always present, are now properly mentioned.
And another, locally 'local' variant, is mentioned but, not functional, "(name)$".
-
asm.groups.txt provides some basic documentation for
att-style syntax assemblers like binutils' AS.
- Paul Carter's textbook for IA-32,
i386+ cpu, IBM-type PC protected mode assembler programming
- pcasm, postscript file,
- examples for Linux & nasm
requires an "ld" version capable of some "coff" format and, the
exact specification of it's rsp. variant!
- Assembly language tutorial
"Programming from the Ground Up" for
x86 Linux systems based on the unix-style AT&T syntax AS assembler:
-
pgubook, linked pdf document, 326 pg,
CVS xml (&c) source.
"This is an introductory book to programming and computer science using assembly language.
"It assumes the reader has never programmed before...
- Assembly Optimization
- FAQ
-
There are several tutorials and an FAQ list available at the "linuxassembly" site.
- Phrack - "A Hacker magazine by the community, for the community..."
but: For your 'privacy', disable cookies and automatic pictures' loading, do not even trust
the 'privacy' link and, mind those 'banners'!
- mailing lists archive (us)
- Archiv zahlloser Mailinglisten, einschl. linux-assembly.
- "C"
-
Introduction to GCC 'inline' assembly.
-
01-gcc-asm.txt,
'A Brief Tutorial on GCC inline asm (x86 biased)', colin@nyx.net, 20 April 1998.
- C to Assembly Translation
-
"Machine-Level Representations of C Programs on Linux/IA32":
A detailed analysis of "how machine-level programs are encoded for Intel IA2 hardware
running the Linux operating system", © 2000 by R.E.Bryant & D.R.O'Hallaron.
The document also provides an introduction to the basics of assembly programming
and on what actions to expect from the most often used cpu instructions.
-
"Stack Computers"
-
by Philip Koopman, principal reference work on stack computers.
Archived and available online: www.ece.cmu.edu/~koopman/stack.html:
...
"The one facet of Forth that is most interesting (and baffling to many casual observers) is that it is an extensible
language. [ ... ] This enables the language to be flexible to an extent beyond comprehension to people who have not
extensively used the capability.
...
"The extensibility of Forth does have mixed blessings. Forth tends to act as a programmer amplifier. Good programmers
become exceptional when programming in Forth. Excellent programmers can become phenomenal. Mediocre programmers generate
code that works, and bad programmers go back to programming in other languages...
...
- Forth
-
serves well for algorithm development and feasibility testing. Hi-Level Forth
(de) can usually straighforwardly and quite
easily be transposed into assembly.
-
Forth newsgroup (en),
Forth newsgroup (de)
-
...for instance: lib4th with 'nasm' (en) (de), subroutine threaded;
F4 with 'as' (en) (de), indirectly threaded,.
- AMD Processor Manuals (K6, ATHLON, etc):
- Intel Pentium II Manuals:
- IBM Developer Works
providing much useful information but, an extremely slow site
- Technical x86 Processor Information
- Hardware Information
- www.plasma-online.de, find main-boards' & peripherals' manufacturer;
- www.idhw.com, recent hardware identification, alternate site.
- Chip Directory, almost every chip ever designed
denkste! inzwischen kaum mehr als ein wirrer Haufen Abfragen und Verweise von eher zufälligem Nutzen.
- Electronic Components - ... ist immerhin einen Versuch wert.
- The Hardware Book, connector/bus descriptions for many architectures
- www.die-wuestens.de liefert Röhren (zu akzeptablem Preis!).
- franz.hamberger (en, de), Verzeichnis von Elektronenstrahlröhren.
- forum.duncanamps.com, anything wrt vacuum tubes, database, docs.
- Lessons In Electric Circuits, free series of textbooks on the subjects of electricity and electronics
|
|
- System-V specification (POSIX, etc):
The description of about everything in a Unix-ish system, down to assembly level.
Low level implementation details and library definitions can be found in the "abi386" document(s).
- The ELF standard
- Single UNIX Specification:
- Latest Linux Manual Pages:
- libc 2.2:
-
libc doc in a single html file (gzip-ed, expands to 3M)
- Linux Documentation Project:
- Linux Device Drivers
- The 2nd edition
xml source, also available for download in DocBook and pdf formats.
Despite of the bad sources quality
(xml about unreadble, pdf incomplete), the document still provides some helpful information...
- Linux Kernel Source
-
Commented list of URLs to Linux Kernel documentation - somewhat out-dated.
- File Formats
- Internet
-
In deutscher Sprache:
-
"Grundlagen der Informatik
für das Nebenfach-Studium"
setzt weder Programmierkenntnisse noch besonderes mathematisches Wissen voraus
(tex Quellen).
-
Allgemeine Verweise zum Linux.
-
"LinuxSchulung", Einführung in den Umgang mit
Linux. Unter Bezug auf Kernel-Version 2.2.11 nicht mehr brandneu und bei den tieferen Feinheiten u.U.
unzutreffend, für den Anfang aber allemal ausreichend.
-
"Linux Handbuch" von
Lunetix. Die alte Auflage
der Systembeschreibung (5.0) ist insbes. in den Grundlagen ausführlicher als die jüngeren Ausgaben, jedoch wegen
vieler Neuerungen nur ergänzend zur aktuellen Version sinnvoll (und brauchbar).
-
Elektronenstrahlröhren, Verzeichnis bei franz hamberger
www.die-wuestens.de liefert Röhren u. Zubehör
W*DOS
...for the brave:
- "wine" and "dosemu"?
Clumsy stuff, tiresome to configure, "dosemu" quite proven but, "wine" doesn't well and most probably won't ever.
I'd recommend the VMware emulators system, not at
all perfect but, useable! - it even managed a W*DOS(95) installation in Linux/X-windows, from scratch.
- Ralf Brown's Interrupt List.
Latest version no. is 61 (15.Jul.00). Includes ref's to Dosemu and information about /dev/nvram:
- High Level Assembly
...probably a somewhat disputable term, applicable to any executeable code generating 'language' -
re "lib4th". Besides, this particular "HLA" isn't an assembler by it's own
but, a front-end to AS, providing a huge mass of hi-level language-like constructs
wrapped around words which read much like a verbose, probably easier to understand, variant of
"C"-ish 'inline'-assembly, heavily loaded with fancy conventions, procedings and data-'types' which
-IMO- have nothing in common with straight forward assembly programming - though, if not minded towards
traditional, 'hard core' (tedious!) assembly, it might well serve as a highly valuable tool:
- Webster Archive of x86 Assembler
resources, Links, Tutorials. The home of "AoA", Art of Assembly Programming, "HLA", &c..
- AoA for Linux - direct link
in case the regular ones remain inactive, Lynx or wget
could further help if the links from the main page resist any attempt to orderly accessing
those pages/files.
...for the very brave:
- Files Compressor/Archiver Programs:
- The home of BZIP2.
For almost any OS, no "patents" and, up to 50% higher compression rate than e.g, "..zip.."!
- The home of GZIP
"gzip" can also be used to expand single "zip"-ed files, "compress"-ed and, "pack"-ed ones.
- another, RARely useful
but, sometimes required archives (de)compressing program, less efficient than bzip2, limited time
licensed, buggy(!) 'trial' binaries only, no sources. IMO, despite occasionally some distributor
seems to insisting on that format, solely, not at all a 'recommendable' tool.
- DVD CSS, for educational purposes...
- "info"/"man" Pages Reader:
-
"pinfo"
(pl, home page) is a Lynx-style
text-mode html browser & reader for the GNU-ish 'info' files, much more comfortable than,
e.g, the most primitive GNU-"info" program or the horrible monstruosity of "emacs",
which can also read the "man"ual pages, link to referred, other such pages and, send
mail, connect to inet sites, print, and much more. Easy to use and configure, (imho)
the one and only useable 'info'-files reader without which the entire
"info system" is just an annoyance, as much as that "emacs", "info", etc. - For instance,
the rsp. source conversion tool (sgml2info, sgmltools-2) explains about "Internationalization
Support" that, besides the 'standard' U.S.-ASCII, "GNU info support for ISO 8859-1 may be
possible in the future". Plain stupid...
- html reader/browser
- Lynx, a fully featured text-mode
html browser, thus efficiently filtering, i.e. no silly 'pup-up's, not even reading that stupid
'adverts' stuff, which does everything a user would expect but, only if and when he wants, instead
of polluting it's media... - Lynx development site.
- Amaya, the w3 consortium HTML reference and
test browser, also a quite comfortable 'wysiwyg' (x)html editor and analyzing tool.
- Nicht 'html', nur um das lästige Durchhangeln durch endlose Werbetexte zu umgehen: Acrobat reader for 'pdf' documents.
- Last Resort:
-
The Undelete Utility for EXT2 Filesystem and Linux Kernel 2.2.x
undelete-0.6.tar.gz (98kB).
-
"jfs" Journalling File-system
Extension by IBM Developer Works -
a very safe file system which helps before loss of data. Requires Linux 2.4+ kernels,
already included in the more recent ones (2.4.19+).
- Recent Kernels provide the "ext3"
file system which is an extension to, and compatible with "ext2" - Linux 2.4.24: not at all
reliable, still, due to unsafe data base management!
- UNIX/Linux utilities:
- From "busybox" README:
"BusyBox combines tiny versions of many common UNIX utilities...
"fileutils, shellutils, findutils, textutils, grep, gzip, tar,...
"...very much like their GNU counterparts.
- Legal
- Sinclair QL:
- Programmieren in QDOS html-Version, "PiQ" - includes the (incomplete) english version.
- Programme zum Sinclair QL mit Quellen und Hilfstexten, zumeist auch im UQLX (QL-Emulator im Linux <= SCHEINT NICHT MEHR ZUGÄNGLICH) einsetzbar.
- (Sehr) altes QL-Archiv bei Geocities
- 1.8.2010: ALLE QL-Dateien sind nun zusammengefaßt unter ql/QL.tar.bz2
Es ist erreicht: Das Vehikel "email" ist tot.
Soweit jedenfalls im Sinne 'Mail' als persönlicher Nachricht mit entsprechendem Inhalt.
Der ausufernde Mißbrauch dieses ursprünglich so hilfreichen Instruments freier
Kommunikation durch aufdringliche geistige Tiefflieger hat seinen Wert zunichte gemacht.
Die Hoffnung, diese SPAMerei unterbinden zu können, hat sich als leerer Wahn erwiesen.
Einziges Mittel ist offenbar, nur noch genau bekannte Absender durchzulassen, und
alles andere rigoros zu verwerfen. In diesem Sinne sind all die Abwehrversuche durch
verfeinerte Filterprogramme reine Zeitvergeudung, ebenso wie mühseliges Ermitteln
von Absenderadressen und Meldungen an deren Netz-Betreiber - rsp. Unterstützer, was den
geringen Erfolg erklären könnte. Allesamt übrigens mit wenigen Ausnahmen im
Bereich der ARIN; durchaus aufschlußreich...
Damit erübrigen sich alle verfeinerten Gegenmaßnahmen, und was an dieser Stelle
einmal dazu gezeigt wurde. Stattdessen nur noch der vielleicht einzige auf Dauer wirksame
Rat, nämlich
kompromissloses Ignorieren jeglicher 'Werbung' im Inet,
und für den, den es interessiert, der Hinweis auf
www.spamsites.org.
UND: Das hirnkranke Spammer-Pack macht vor dem Mißbrauch auch meiner (virtuellen) Domain(s) nicht halt,
darum hierdurch der Hinweis, daß es u.a. keine email-Adressen "@lxhp.in-berlin.de" gibt,
die den Buchstaben "f" enthalten, daß mein Domainname niemals in der Betreff-Zeile vorkommt,
und daß es ganz sicher nichts aus meiner Urheberschaft gibt, sei es was es will, das mit irgendeinem
Stück Weichware der "Microsoft" erzeugt worden ist.