New answers tagged

3 votes

Does DOS run Crysis?

Quake was originally written for DOS, so running it on a DOS computer isn’t particularly special — what’s unusual in the video you mention is the CPU and FPU being used (Quake was really a Pentium ...
Stephen Kitt's user avatar
1 vote

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

Hewing strictly to the question, the bottom line is that the BIOS was no more "extended-memory safe" than was DOS. As others have said, much- arguably most- software on IBM PCs or strict ...
Mark Morgan Lloyd's user avatar
6 votes

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

Short answer: Because no one wanted to implement an OS in a game... Long answer: Most games that required filesystem access used DOS (or later, on 386+ a DOS extender). Since version 2.0, DOS provided ...
Sergey Kiselev's user avatar
2 votes

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

Being now an old dinosaurus allows me to remember those days. Not only games were using BIOS, but a lot of common programs also did. There were 3 main reasons for that: there was few MS/DOS level ...
Serge Ballesta's user avatar
25 votes

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

We need to look into this in a bit more detail. There were indeed a limited amount of "direct boot" games that completely by-passed DOS and implemented their own low-level hardware support. (...
tofro's user avatar
  • 34k
8 votes

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

You mean beside the fact that this would make it impossible, or at least quite complex, to install Games on hard disk - which was standard in AT times and later. Likewise for returning to DOS after ...
Raffzahn's user avatar
  • 219k
27 votes
Accepted

Did any MS-DOS program ever use the System Request interrupt?

TL;DR: One of the great Ideas that never Materialized Contrary to what is often assumed, the key was not added to support some 3270-style emulation1, but to enable a basic multi-application/OS ...
Raffzahn's user avatar
  • 219k
46 votes

Why didn't PC games eschew MS-DOS and deal with BIOS directly?

You need to run the game somehow. There were some early booter games, but as soon as you had a hard drive, users typically want to store programs, including games, on the hard drive, as files. When ...
Justme's user avatar
  • 30.4k
19 votes

Did any MS-DOS program ever use the System Request interrupt?

The SysRq key is a perfectly normal key on the keyboard. It does not generate a special or unique interrupt by itself. The standard keyboard interrupt of BIOS just does what it does for all keys and ...
Justme's user avatar
  • 30.4k
3 votes

How can I reverse-engineer the game Wizardry (1981) for PC, based on UCSD Pascal?

Just want to point out that while UCSD P-System was indeed intended to be a portable runtime, that, in the end, the binaries were not necessarily completely portable. Notable bit are that the Apple ...
Will Hartung's user avatar
  • 12.2k
6 votes

How can I reverse-engineer the game Wizardry (1981) for PC, based on UCSD Pascal?

One additional piece not mentioned in the other answers... The notes on the UCSD Pascal filesystem here have links to Apple II Pascal reference material, notably this monster. You can, for example, ...
fadden's user avatar
  • 9,020
4 votes

How did 16-bit MS-DOS programs use a large (> 64KB) stack?

The CONFIG.SYS file of DOS had a setting to enable multiple stacks, but these were used to handle hardware interrupts. The Huge memory model might in theory have been used to support a stack of more ...
Davislor's user avatar
  • 8,667
4 votes

How did 16-bit MS-DOS programs use a large (> 64KB) stack?

The large-code memory models (medium, large, and huge) did not need a stack size more than 64k, they just needed the ability to push/pop a cs:ip pair rather than just an ip. That can be done without ...
paxdiablo's user avatar
  • 4,752
31 votes
Accepted

How did 16-bit MS-DOS programs use a large (> 64KB) stack?

They simply did not use a large stack. If you look at the standard memory models for the x86, there was a single stack segment in all of them (which was even shared with other segments in the smaller ...
dirkt's user avatar
  • 27k
9 votes

How did 16-bit MS-DOS programs use a large (> 64KB) stack?

The "large" memory model of x86 allowed a program to have multiple code segments and multiple data segment, using far calls to jump across code segments, and far pointers to access data from ...
Raffzahn's user avatar
  • 219k
13 votes

How did 16-bit MS-DOS programs use a large (> 64KB) stack?

DOS programs typically have limited stack requirements, and tend to declare small stacks. DOS itself uses its own stacks in many cases, and programs’ stacks don’t need to leave much room for DOS use. ...
Stephen Kitt's user avatar
14 votes

How can I reverse-engineer the game Wizardry (1981) for PC, based on UCSD Pascal?

The background has already been explained, some additional details. I don't know where to get the version you have, but quick googling found a version with a 320K WIZ1.DSK. This one clearly is a UCSD-...
dirkt's user avatar
  • 27k
15 votes

How can I reverse-engineer the game Wizardry (1981) for PC, based on UCSD Pascal?

A few hints about how the UCSD system works. What's often called UCSD-Pascal is in fact a stand alone OS with Pascal as one possible language. Others were BASIC, FORTRAN, Ada or Assembler. The whole ...
Raffzahn's user avatar
  • 219k
12 votes

How can I reverse-engineer the game Wizardry (1981) for PC, based on UCSD Pascal?

What an intriguing piece of archaeology you've stumbled upon! COM programs, present an interesting quirk. Despite its code segment being confined to a mere 64KB, they allocated all available free RAM ...
Rui F Ribeiro's user avatar
0 votes

Why did DOS-based Windows require HIMEM.SYS to boot?

Because until Windows 95 it was not always standard practice to load straight into Windows. In the Windows 3.x days it was pretty common for only a few of your programs to be Windows apps. Everything ...
davolfman's user avatar
  • 555
3 votes

Did MS-DOS have any support for multithreading?

exit, _exit Terminates all threads of the calling program. Well, given that the manual you are citing, was called "Microsoft C Optimizing Compiler for MS® OS/2 and MS-DOS®", no wonder it ...
stsp's user avatar
  • 161
1 vote

Why did DOS-based Windows require HIMEM.SYS to boot?

It is entirely possible that it required himem simply because it had to support himem, to start with. I.e. if you have himem.sys loaded, then windows can't just look into e820 and map all the ...
stsp's user avatar
  • 161
0 votes

Why did "protected-mode MS-DOS" never happen?

When not using a memory manager, real-mode x86 programs can be viewed as having very fast access to 64K of data stored in RAM, and moderately fast access to another ~500K (depending upon program size)....
supercat's user avatar
  • 35.7k
2 votes

Why did "protected-mode MS-DOS" never happen?

I'd think it was pretty obvious at the time that the real-mode limitations of both BIOS and MS-DOS Real-mode limitations are not of BIOS or MS-DOS. Real-mode uses a 16bit addressing + segmentation, ...
stsp's user avatar
  • 161

Top 50 recent answers are included