Mail Archives: djgpp/2000/03/16/10:39:04

X-Apparently-To: clax86 AT yahoo DOT com via
X-Track2: 2
X-Track: 1-1: 40
From: Frederico Jeronimo <fjds AT rnl DOT ist DOT utl DOT pt>
Newsgroups: alt.lang.asm,comp.lang.asm.x86,comp.os.msdos.djgpp
Subject: Far jumps...
Organization: Universidade Tecnica de Lisboa
Lines: 24
Mime-Version: 1.0
X-Sender: fjds AT camoes
X-Mozilla-Status: 0801
Approved: <camille AT bluegrass DOT net>
Message-ID: <>
Date: 16 Mar 2000 09:15:03 -0500
X-Trace: 16 Mar 2000 09:15:03 -0500,
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Hi all,

	A simple question. I thought I knew how to do it but somehow I
can't seem to make it work. Imagine I have this (in NASM), 

      _OldVect  resd 8*2 ; Pointers to original int handlers
        ; ebx holds the wrapper number and cx:edx the selector:offset
	; returned by dpmi function 0204h
	mov     [_OldVect+ebx*8], edx     ; Save offset
        mov     [_OldVect+ebx*8+4], cx    ; Save selector
	jmp far [cs:_OldVect + 8*wrapper_number]

	And the previous line chains back to the old handler. This
works just fine. But,
assuming I want to split the _OldVect in 2 variables _OldSel and _OldOff
to hold the 16-bit selector and 32-bit offset. How do I proceed? I can't
seem to do the jmp without error... Thanks in advance,

						Frederico Jeronimo

- Raw text -

  webmaster     delorie software   privacy  
  Copyright 2019   by DJ Delorie     Updated Jul 2019