Thanks for the the info John.  So if I were to take a machine program (.co 
file) and placed it on a ROM I would have to change the CALL addresses to match 
the memory locations of a ROM.

________________________________
From: M100 <[email protected]> on behalf of John R. Hogerhuis 
<[email protected]>
Sent: Tuesday, March 28, 2017 1:05:36 AM
To: Model 100 Discussion
Subject: Re: [M100] jump here to there

Usually a jump means a microprocessor instruction that changes the program 
counter or instruction pointer to a specific value.

The best analogy in BASIC is "GOTO"

Sometimes a jump is distinguished from a relative branch... branch 25 bytes 
ahead would take the current instruction pointer and add 25 bytes to it. Branch 
-50 would branch 50 bytes back from current up.

There is no relative branch on the 8085.

Now a jump to subroutine or a CALL is a different animal. The BASIC analogy is 
GOSUB. If you jump to a subroutine, the address after the jump or branch to 
subroutine is pushed on the stack so later you can return to where you came 
from.

On the 8085 jump to subroutine is done by the CALL instruction.

In general people may loosely talk about any of these things being a jump, 
including GOTO or GOSUB a line number. You have to consider the context. The 
only thing I think you can assume when someone says jump is that he IP / PC 
(instruction pointer or program counter) will change if the jump is taken.

I say "if" because some instructions are conditional jumps or branches. They 
may not be taken depending on state/ conditions.

-- John.

Reply via email to