ASM code problem


[Prev][Next][Index][Thread]

ASM code problem



As you all have been noticing lately, I have been pretty active on this
mailing list.  Remember, I am the writer of the ASH <-> OShell-82
Development Kit.  I am also adding two major improvements in the next two
versions.  I need a little help with some code.

  push hl                  ; Temporarily store hl on the stack
  push de                  ; Temporarily store de on the stack
  ld hl,$38FA              ; $38 -> l, $FA -> h
  ld de,(ROM_LOCATION)     ; $00 -> e, $00 -> d
  add hl,de
  ld (FINAL_ADDR),hl
  pop de                   ; Retrieve de from the stack
  pop hl                   ; Retrieve hl from the stack
  call (FINAL_ADDR)

Could someone please go through and tell me what each of the uncommented
lines does (in terms of $38 and $FA).  Also, I need to know how the call
statement works (how it reads the value located in FINAL_ADDR).

THIS IS VITAL INFO. THAT I NEED TO FINISH THE NEXT VERSION OF ASH <->
OSHELL!!!

TIA,
Thomas J. Hruska

|----------------------------------------------------|
|             Shining Light Productions              |
|      "Meeting the needs of fellow programmers"     |
|                                                    |
|   C/C++ programs                                   |
|   QBasic programs                                  |
|   JavaScript                                       |
|   TI-82 ASM                                        |
|   TI-Basic                                         |
|   HTML                                             |
|                                                    |
| Search for our web site at                         |
| www.geocities.com/SiliconValley/Heights/8504/      |
|                                                    |
| We use a dynamic web server for most of our        |
| documents!!!                                       |
| Soon to go to a full JavaScript 1.1 web site!      |
|----------------------------------------------------|


Follow-Ups: