From: dontmailme AT iname DOT com (Steamer) Newsgroups: comp.os.msdos.djgpp Subject: Re: NASM and NASM from RHIDE Date: Sun, 18 Jun 2000 12:08:41 GMT Organization: always disorganized Lines: 25 Message-ID: <394cbbc8.18227337@news.freeserve.net> References: <8ii6j4$rsu$1 AT news5 DOT svr DOT pol DOT co DOT uk> NNTP-Posting-Host: modem-240.new-jersey.dialup.pol.co.uk X-Trace: newsg2.svr.pol.co.uk 961330122 6639 62.137.81.240 (18 Jun 2000 12:08:42 GMT) NNTP-Posting-Date: 18 Jun 2000 12:08:42 GMT X-Complaints-To: abuse AT theplanet DOT net X-Newsreader: Forte Free Agent 1.11/32.235 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Greg wrote: > Hi... recently got NASM so that I could start writing code how its supposed > to be done = ) However I've run up against some problems: > > The first is I guess a beginners problem in assembly language... I have a > function to switch to one of four screen modes... the value past to the > function is used to jump to the correct routine for each mode... this worked > fine until I added the code for the third mode... suddenly all the jumps > which were targetted at the end of the procedure generated 'Short jump out > of range' errors... what exactly IS the range? and how do I make a slightly > longer jump = ) This is because NASM treats conditional jumps as short by default. If you need longer jumps then use something like jz NEAR mylabel This is explained in section 10.1.2 of the NASM manual. I don't know what this has got to do with DJGPP. If you have further questions about NASM you would be better asking in alt.lang.asm or comp.lang.asm.x86. S.