Dogs Of War Vu

Network of Friends => Tornado => Topic started by: Frankie on May 09, 2016, 09:36:47 AM

Title: Assembly language resources. Really, how hard can it be?
Post by: Frankie on May 09, 2016, 09:36:47 AM
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.




Title: Re: Assembly language resources. Really, how hard can it be?
Post by: Speedwagon on June 16, 2016, 08:11:17 PM
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:
(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
Title: Re: Assembly language resources. Really, how hard can it be?
Post by: Frankie on June 17, 2016, 07:55:32 AM
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
Title: Re: Assembly language resources. Really, how hard can it be?
Post by: Speedwagon on June 18, 2016, 05:42:54 AM
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