Home About me PC TI-Calcs Music Guestbook News

ABOUT THE SCHOOL
Finally, I've managed to find some time porting the ZShell school so it's optimized for Usgard. There are no new lessons, or anything like that; all ZShell specific details have simply been changed to their equivalence in Usgard 1.5 - the latest Usgard version. However, the use of precompiled usgard routines (#fncall) are at some detail discussed at the end of lesson 5.

LESSONS
Below follows a list of all published lessons, both as HTML documents (recommended) and as plain text files.

#1 HTML TXT Introduction to assembly language. Binary and hexadecimal. The memory. A "Hello World" program. How to compile a program.
#2 HTML TXT How to store information in registers and in the memory. Some simple instructions, ld, add, inc, dec and sub. A closer look at the "Hello World!" program.
#3 HTML TXT What are flags? How to compare and make loops. What are ROM calls?
#4 HTML TXT All bit manipulating instructions and some other small useful instructions.
#5 HTML TXT What is/how to use the stack, including the instruction Push/Pop. PutImage and a very fast PutSprite routine.
#6 HTML TXT What are opcodes? How do I use alias and macros in my assembler? Some more registers are presented plus a couple of new instructions. Last, introduction to grayscale graphics.
#7 HTML TXT More about grayscale graphics, including a grayscale sprite routine. Two different input routines. An introduction to ports and how to read multiple keys.

You can download all lessons in text format by pressing here.

COMPILING INSTRUCTIONS
I've got a lot of mail from people asking questions like "Where do I write the program?" and "Where do I find the necessary files?". So I decided to answer those questions here and put all necessary files on the web so I don't have to answer those questions again.

When writing an Usgard program, you should use a regular text editor. If you like Windows (yuck), Notepad is enough (if you use a more advanced wordprocessor, you must save the file as a plain text file). In DOS, you can use EDIT.COM which is in the DOS directory.

All files necessary to compile an Usgard program is included in Usgard 1.5, except the file TASM80.TAB. You should copy TASM80.TAB into the directory where you unzipped Usgard, for instance C:\USGARD\

Now I'll show you how to compile a file. If you run Windows, you should start a MS-DOS session. In the example below, I will compile the file DETURBO.ASM which is in the SRC directory. So, first we will copy it to the Usgard directory:

  C:\>cd c:\usgard
  C:\USGARD\>copy src\deturbo.asm .

Assuming the file TASM80.TAB already is in the C:\USGARD\ directory, you compile DETURBO.ASM by typing:

  C:\USGARD\>c deturbo

  SrcWIZ 1.0     - by Jimmy Mårdell and Andreas Ess

  deturbo.asm:
    Lines:  122  Relocs:   7
  usgard.h:
    Lines:  249  Relocs:   0

  7 relocations in 371 lines [2 files]

  TASM Z80 Assembler.       Version 3.0.1  June, 1994.
   Copyright (C) 1985-1994 by Speech Technology Incorporated
  tasm: pass 1 complete.
  tasm: pass 2 complete.
  tasm: Number of errors = 0


  STRING-85 for Usgard by Andreas Ess & Sam Davies(original: Dan Eble)
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Thanks to Jimmy Mardell for the idea to optimize the jump table!

  Actual code = 255 bytes

  7 relative addrs patched... 7 bytes
  0 absolute addrs patched... 0 bytes
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Address table: 7 addresses patched = 11 bytes.

  Total string size = 266

  Success.

  C:\USGARD\DETURBO.85S => C:\USGARD\PRGM\DETURBO.85S [ok]
  C:\USGARD>

Now the file DETURBO.85S is in the \PRGM subdirectory, ready to be linked to your TI-85!

[ Home | About Me | PC | TI-Calcs | Music | Guestbook | E-mail | NEWS ]