LET'S LEARN ASSEMBLY LANGUAGE PROGRAMMING. I MEAN, HOW HARD CAN IT BE?
Let's say you have a dream of going from zero knowledge of Assembly Language to modding Tornado 16-bit x86 assembly code, in say two years. What do you do? Where do you go? Never fear! Here are some useful resources on the Net. If you know of other useful and invaluable resource links, please contribute to this thread!
Programming: Assembly - by khoraski (https://www.youtube.com/playlist?list=PLXNR8A6QBzobli2v8QoXkJVpQWNx_fH-1) Youtube Channel
Assembly Language: Step-by-Step by Jeff Duntemann (PDF)
http://faculty.petra.ac.id/indi/files/Assembly%20Language%20step%20by%20step.pdf
Assembly Language Primer for the Absolute Beginner by Doug Dingus (potatohead)
http://forums.parallax.com/discussion/download/52004/assembly_07.pdf
The art of assembly language by Randall Hyde (PDF) - only 1566 pages.
http://www.ic.unicamp.br/~pannain/mc404/aulas/pdfs/Art%20Of%20Intel%20x86%20Assembly.pdf
The art of assembly language by Randall Hyde (Windows, Linux and DOS 16-bit online versions)
http://www.plantation-productions.com/Webster/www.artofasm.com/index.html
The art of assembly language by Randall Hyde (DOS 16-bit online version)
http://www.plantation-productions.com/Webster/www.artofasm.com/DOS/index.html
CS310H - Computer Organization and Programming (Honors) by Prof. Donald S. Fussell
http://www.cs.utexas.edu/users/fussell/cs310h/handouts/handouts.shtml
http://www.cs.utexas.edu/users/fussell/cs310h/lectures/Lecture_11-310h.pdf
Skul Security Assembly Language Tutorial
https://wiki.skullsecurity.org/index.php?title=Fundamentals
WISC Edu Assembly Language Tutorial (x86) - very brief
http://www.hep.wisc.edu/~pinghc/x86AssmTutorial.htm
University of Limerick Computer Society's "A Brief x86 Assembler Tutorial"
http://www.csn.ul.ie/~darkstar/assembler/
NASM Assembly Programming Tutorial
http://www.tutorialspoint.com/assembly_programming/index.htm
University Of Virginia's x86 Assembly Guide
http://www.cs.virginia.edu/~evans/cs216/guides/x86.html
Help PC's Assembler Programming Topics
http://helppc.netcore2k.net/topics
The Art of Assembly Language Programming
https://courses.engr.illinois.edu/ece390/books/artofasm/artofasm.html
Intel® 64 and IA-32 Architectures Software Developer's Manual (only 3,947 pages)
http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf
REVERSE ENGINEERING CLASSIC GAMES
How to compile 23-year old CastleWolfenstein 3D C++ source code
http://fabiensanglard.net/Compile_Like_Its_1992/index.php
Reverse-engineering a classic - Strike Commander
http://fabiensanglard.net/reverse_engineering_strike_commander/index.php
Apple II Prince of Persia source code and Jordan Mechner
http://www.jordanmechner.com/backstage/journals/
FROM ARCHIVE.ORG
16-Bit Microprocessors
https://archive.org/stream/16BitMicroprocessors_201307/16%20bit%20Microprocessors#page/n13/mode/2up
Professional Assembly Language programming
https://ia800202.us.archive.org/22/items/Professional_Assembly_Language_2005/Professional_Assembly_Language_2005.pdf
The Lost Art of Assembly Programming: Unraveling a Childhood Mystery
https://archive.org/details/The_Lost_Art_of_Assembly_Programming_Unraveling_a_Childhood_Mystery
Computer Architecture and Programming of the Intel x86 Architecture by Patrick H. Stakem
https://archive.org/details/CompArchProgX86
Assembly language for kids: Commodore 64 by Sanders, William B.
https://archive.org/details/Assembly_Language_for_Kids_Commodore_64
Folkscanomy Electronics Articles: A Beginners Course In Assembly Language
https://archive.org/details/fea_A_Beginners_Course_In_Assembly_Language
The Art of Assembly Language(Intel x86) - Randall Hyde
https://archive.org/details/ArtOfIntelX86Assembly_201512
Commodore C64 Book: Top Down Assembly Language Programming For Your VIC-20 and C64 (1984)(McGraw-Hill)
https://archive.org/details/Top_Down_Assembly_Language_Programming_For_Your_VIC-20_and_C64_1984_McGraw-Hill
Beginners assembly language programming for the VIC 20 by Holmes, Peter, 1939-
https://archive.org/details/Dr_Watson_C64_Assembler_docs
Using 6502 assembly language : how anyone can program the Apple II by Hyde, Randall
https://archive.org/details/A2_Hyde_6502_Asm_Lang
Commodore C64 Book: Top Down Assembly Language Programming For Your VIC-20 and C64 (1984)(McGraw-Hill)
https://archive.org/details/Top_Down_Assembly_Language_Programming_For_Your_VIC-20_and_C64_1984_McGraw-Hill
Computer Organization And Design 3rd Edition, John L. Hennessy, David Patterson
https://archive.org/details/ComputerOrganizationAndDesign3rdEdition
Lecture 01 - Computer Architecture and Assembly Language Programming, Virtual University of Pakistan by Mr. Bilal Muhammad Hashmi
https://archive.org/details/CS401Lecture01
Microsoft MASM by Scott Jones
https://archive.org/details/RevisedJonesAs
Student CD with Source Code Files and Microsoft MASM Version 6.15 To accompany Assembly Language: Programming for the PC Family, 3rd Edition
https://archive.org/details/RevisedJonesAs
An Introduction to ASM86 by Intel
https://archive.org/details/introductiontoas00inte
The Lost Art of Assembly Programming: Unraveling a Childhood Mystery by Jack Nutting
https://archive.org/details/The_Lost_Art_of_Assembly_Programming_Unraveling_a_Childhood_Mystery
ERIC ED054126: Introduction to Computer Programming.
https://archive.org/details/ERIC_ED054126
Introduction to 80x86 assembly language and computer architecture [electronic resource]
by Detmer, Richard C;
https://archive.org/details/Introduction_To_80x86_Assembly_Language_And_Computer_Architecture_2001
2001 Introduction To 80x 86 Assembly Language And Computer Architecture
https://archive.org/details/2001IntroductionTo80x86AssemblyLanguageAndComputerArchitecture
PONG by DJT
https://archive.org/details/PONGV2.11996DJTAction
Advanced T-Robots by NecroBones
https://archive.org/details/AdvancedTRobots_1020
SOCIAL MEDIA
Assembly Language Programming's YouTube videos
https://plus.google.com/102073716732087511988/videos
Google Plus Community: Assembly Language Programming
https://plus.google.com/collection/cGv0CB
Anyone knows of other Assembly Language resources? Please reply to share.
Hi Frankie,
As a non-programmer I found this article very helpful in understanding just what we're trying to accomplish with Tornado (looks like it CAN be pretty hard):
https://www.rockpapershotgun.com/2015/09/16/how-gog-com-save-and-restore-classic-videogames/ (https://www.rockpapershotgun.com/2015/09/16/how-gog-com-save-and-restore-classic-videogames/)
As you and I have discussed, here's a possible wish list of "goodies" that could be included in a GOG version:
- "Clean" (out-of-the-box) version with European & ODS theaters
- "Patched" version of both theaters with Heinz-Bernd Eggenstein's mods (snow, NVG, TMF, TLE, TKM, etc.) and Kenneth Larson's Tornado Time Compression (with permission, of course)
- Joystick compatibility, including use of throttle and rudder controls
- High-quality sound effects in both theaters (according to Heinz-Bernd Eggenstein, the Trimark release of ODS had Soundblaster support intentionally disabled)
- High-quality, full-color PDF versions of both the original masterpiece (332 pages) and ODS manuals, Control Summary card, Technical Supplement, and all 5 maps (the images in the original manual published by DI are much clearer than the Spectrum Holobyte version)
- Tornado Command & Staff College (by Basil Copeland, Eric Joiner & Heinz-Bernd Eggenstein) including the mods for more challenging campaigns (with permission, of course)
- CD-quality version of original Tornado music by David Punshon and Richard Wells (with permission, of course)
- Bonus -- a printed keyboard template. Here's one that was available when Tornado was first released:
(http://i1226.photobucket.com/albums/ee420/Rambler56/Tornado%20keyboard%20template_zpsxdgb5giz.jpg) (http://s1226.photobucket.com/user/Rambler56/media/Tornado%20keyboard%20template_zpsxdgb5giz.jpg.html)
Original keyboard template purchased in 1994...a work of art in itself! © Keyboard Commander Corp. 1993
I've collected many retail versions of Tornado over the years...and I would click "Add to cart" for a complete package like this any day. Surely I can't be the only one!! 8)
Speedwagon
Hi Mike
You're not the only one. I too would click on the "Checkout button" to get all those goodies you listed! That keyboard template your posted is no longer in production. It's a collector's item. Apparently, according to this ancient comp.sys.ibm.pc.games.flight-sim newsgroup post (https://groups.google.com/forum/#!topic/comp.sys.ibm.pc.games.flight-sim/1VOCZYY_eWo), the manfacturer, Keyboard Commander Corp., no longer sold them in 1995.
BTW, I came across this site: http://keycard.mogelpower.de which has softcopy keyboard templates for over 500 games.
Amazingly it has a Tornado colour coded softcopy keyboard template here: http://keycard.mogelpower.de/tbisz.html
Direct link to the PDF is http://keycard.mogelpower.de/t2/tornado.pdf
I detected some Germanised keys. Like "Strg" in place of the more common "Ctrl".
This is what it looks like:
(http://www.moodurian.com/tornado/images/tornado_keyboard_template_keycard.mogelpower_de.png)
I am sure some key bindings are missing. Like the numeric keypad.
See also attached the PDF file!
Regards
Frankie Kam
Great find Frankie, thank you. I had not seen that site before.
I'm sure we could create a template ourselves that could be included.
Speedwagon