TIP: Click on subject to list as thread! ANSI
echo: public_domain
to: rowan crowe
from: Paul Edwards
date: 1995-05-24 20:49:48
subject: data segment woes

> .data
rc>   ^^^^^ this simplified directive here expands to:

rc> _DATA   SEGMENT WORD PUBLIC USE16 'DATA'
rc>                 ^^^^ or perhaps PARA

rc>     Put in my original code "mov ax, seg _data" (with the leading 
rc> underscore)

Ok, that compiles under both Watcom and Borland, but still doesn't
work under Watcom with regards to drawing on the screen.  However
it still doesn't work.  The C program is trying to use DS values of
6e65 and 5e64 (it flips between them, for some strange reason, as
before).  The override of the ds is loading a value of 5e66!  Being
different from both other values is someone of a concern!!!  However,
I'm going to try to stick with it, and see if it helps if I add the
code you suggested to all of the functions instead of just the one
that the first sign of a problem shows up in.  BFN.  Paul.

P.S. You asked me what memory model I was using.  Large is the
answer.

P.P.S. Well, adding your code fixup to EVERY function in vio.asm
(what a lot of work!) fixed the problem!!!!!!!!!!!!!!!!  Now
would you mind telling me what I've done?  I actually added the
code to a couple of functions at a time, and it was amazing the
dramatic effect it had!  It inspired me to keep going, which 
eventually worked.  It traps in a different bit of the code in
one of the other message areas, and I will investigate that later,
but that is most likely a different problem.  I would like to know
why the hell I had to add all that code!!!

P.P.P.S. YIPPEE!!!!  The problem was I hadn't put in the special
prototype (...) to force Watcom to pass parameters on the stack
before calling the assembler version of normalize, and now she's
a little ripper!!!

P.P.P.P.S. If you know of a way of making Watcom (DOS, not OS/2,
and 16-bit, not 32-bit) of passing parameters on the stack instead
of in registers let me know, as I don't like having the watcom
specific stuff in my source code like that.  
@EOT:

---
* Origin: P9 - Ten Minute Limit (3:711/934.9)

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.