[A82] Re: ROM-offset


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

[A82] Re: ROM-offset




> Van: Dines Justesen <dines@aub.dk>
> 
> The functions are not placed on page 0, but but the table at the end of
> the ROM does contain the functions needed. Have a look at 3620 and
> 38EA (ROM 19 page 0), both are used by Vertigo. I have tried to find the
> source for Vertigo (I lost my own copy), but can not see it anywhere,
> maybe you should email the author.

You probably mean this routine (from vertigo 0.94):

-----------
RelocRoutines:

#ifdef TI82
DeleteTempUnadj:
        call DeRelocate
        ROM_CALL(3620h-1Ah)
        jr RelocateLoc
RecreateTempUnadj:
        call DeRelocate
        ROM_CALL(38EAh-1Ah)
RelocateLoc:
        jp Relocate+adj
#endif
-----------

If I look at place in page 0 it looks like there's no RET after the code.
Or is this kinda like the ROM's own ROM_CALL()? Like the bcall() stuff on
the Ti83+?

So for $3620-$1A that would be:
	call	$2E60	;
	.dw	$4233	; Adress (?)
	.db	$02	; Page (?)

But what do they do? When I try to follow what's going on inside Vertigo my
head turns all jelly... (But that's what they call "vertigo", isn't it?)

I guess "ROM_CALL(3620h-1Ah)" deletes the inputbuffer. Does it set the
pointers to zero or what? I'll just need to try... And
"ROM_CALL(38EAh-1Ah)" presumably recreates the buffer. Could this one be
called 'stand-alone'? Or do you need to delete the inputbuffer first?

BTW: Whew, this game contains lots of info about all Z80 calcs...

	Henk Poley <><





Follow-Ups: