Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Question on 16BIT assembly code acting different on diff computers?

Status
Not open for further replies.

DoomMaster

Programmer
Mar 5, 2004
9
0
0
US
Hey guys, I'm using Windows XP Professional with all possible updates (excluding the beta SP2), and my processor is an AMD Anthlon XP 2700+

I took my program to class, and ran it on a DELL computer running windows 2000, and it ran fine, but if I run the VERY same code on this machine, it doesn't work! I don't know what's wrong!

is there maybe a reliable 3rd party console made specifically for assembler? How can I avoid the different processor/OS problems with assembly?
 
Okay sorry, my mistake.

The code works the same in FULL SCREEN mode console, but when I use the windowed mode of CMD, it doesn't execute properly. It gives memory errors. Yet, if I go full screen, it works fine?

WHy is this so?
 
without knowing what was in your assembler code it's very hard to tell why it would run on one system and not another. There is no question that all the processors are 100% compatible. What do you mean by "didn't work"?
Of course not all machines are set up identically, so you can get problems like inability to find a 16-bit mouse driver on some and not others etc. etc., but these are the standard headaches of the "compatible" PC world.
 
Why will my assembly program not run correctly in windowed CMD mode? If I go full screen (ALT + ENTER) then it runs fine. I frequently test to see if my program runs, and all of the changing resolutions to full screen gets a bit frustrating. Any way I can make it work in windowed mode?
 
Could it be that somewhere you are using memory that has not been alocated to your program (i.e. a pointer is pointing at something other than what you think it is?)
 
All of my code is inside of my Data segment, using conventional code format.

I reference no memory addresses directly, I use names that have allocated memory reserved inside of my data segment.

The program works perfectly full screen mode, but in windowed mode, it doesn't work. If it works in full screen mode, then obviously it is capable of working correctly. This is a problem with something other than my code, yet I don't know what else it could be, so I was hoping I could find out here.

I hope someone can help, thanks a lot!
 
i suppose this is an OS problem, and i feel it really intriguing. DoomMaster, can u give us a bit more info on ur proggy and errors it causes?
 
if not OS then video card!
when in text mode the base address tends to be the same but when in higher resolution the OS will not be using the standard base address. it may be using a different page for the CMD or that particular video card wont allow the OS to process the standard base address when in higher resolution etc.

i would get your program to change to video card mode to the text screen mode upon execution.


"There are 10 types of people in this world, those who know binary and those who don't!"
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top