Questions tagged [dos]
Disc Operating System, started as 16-bit OS for PC-AT/XT x86++ platforms
45
questions
-1
votes
0
answers
75
views
Decompiling SkiFree (An attempt) [duplicate]
Excuse me, I am just liking to use the SkiFree source code for my very own purpose. The purpose is basically adding my own enemies and stuff to it (with it's own functions) rather than replacing the ...
1
vote
1
answer
111
views
Identifying C/C++ Library Functions
I am attempting to reverse-engineer an old DOS executable, which seems to have been compiled around 1992 using Microsoft's C compiler at the time.
When opening the executable in Ghidra no imports are ...
2
votes
0
answers
270
views
Help Needed With Finding Image Data In DOS Game File
I have been analysing, an File called FW190AS.PAC from a 16 Bit Game called Secret Weapons Of The Luftwaffe, in a Hex Editor, the Bytes are displayed in Little Endian format. My aim with this game, is ...
0
votes
2
answers
145
views
Disassemble MS-DOS 2.0 boot sector
I try disassemble boot sector for floppy 360K MS-DOS 2.0. There is code:
;bios parameter block here
seg000:001F db 0
seg000:0020 db 0Ah
seg000:0021 ...
4
votes
1
answer
259
views
Ghidra 16-Bit DOS Strings
I am attempting to reverse-engineer a 16-Bit DOS MZ executable.
The file contains many different strings, most of which are printed out to the console at various points.
IDA seems to be able to pick ...
5
votes
1
answer
302
views
Disassembling a DOS game with dynamic code/overlays in IDA Pro
I'm working on a disassembly of an old DOS game. (Real old: 16-bit, real mode.) The bulk of the game is in a large resource file of mixed binary and data; the executable basically just loads a chunk ...
2
votes
0
answers
71
views
Need help with modifying DOS game extracting graphics codes
I have the following two Codes which make up a DOS Game Graphics Image Extracting Program, written in C# :-
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
...
0
votes
2
answers
721
views
How to set a variable as "pointer to struct" in IDA in order to automatically replace offsets by field names?
In IDA, I have the following disassembly code (from an old 16-bit DOS application) :
les bx, _Foo
mov word ptr es:[bx+84h], 0FFFFh
mov word ptr es:[bx+8Ch], 0FFFFh
mov word ptr es:[bx+...
1
vote
1
answer
161
views
Wrong relocations on programs requiring DOS/4G (or DOS/32) 32-bit extender
In the last week I've attempted maybe 3 times to debug a game in DOSBox (Fallout 1 DOS version), and the game uses DOS/4G to extend itself to 32-bit protected mode. The program has a DOS stub which ...
1
vote
0
answers
124
views
I have a dos file/database that i need to extract into MS Excel or My Sql
I have a dos file/database(decades old) that I need to extract into MS Excel or My SQL.
I am using a MacBook.
The file appears to have no extension.
The file type I can see when I do "get info&...
1
vote
1
answer
111
views
Finding API in ROM dump (DOS debug)
Have dumped the ROM from a HP 200LX using these instructions:
debug #Enters the debug mode
r bx #Reads the bx register and prompts you to enter a new value
30 #The new value for bx
r cx #Reads the cx ...
1
vote
0
answers
1k
views
Where to start analyzing a 16 bit dos program?
I've tried to analyze this small exe online.
I've tried with https://onlinedisassembler.com/odaweb/ (link) but it's hard for me to get the first question:
Why the tool doesn't try to detect the set ...
0
votes
1
answer
62
views
Reverse engineering mode X VGA function(s)
I'm trying to reverse engineer an old DOS game. At the moment I'm stuck at a function that implements some functionality of VGA running in mode X. My issue is that any of the available sample codes on ...
2
votes
2
answers
454
views
Finding Code Reference String in MS-DOS 16-bit Executable with IDA Pro
Have an application that has code to detect serial port model. I'm trying to work out how it works through static analysis. I have unpacked the EXE and can find the references to the strings:
dseg:...
0
votes
2
answers
336
views
How to retrieve name of a variable defined in the data segment in IDA when no process is attached?
I have disassembled an old DOS application with IDA. It run in 16-bit real mode. Some instructions are referencing variables defined in the data segment (DS).
push word ptr ds:8401h
Since I have ...
2
votes
1
answer
65
views
Why would VGA port 03CC respond with bit 3 set and bit 2 not?
I'm reverse-engineering some code I wrote in the middle-90s for which the source is long-lost and I'm a bit baffled by some VGA code I've encountered. I think it's probably from library or 3rd party ...
0
votes
1
answer
51
views
How to determine commands sent over DC-37 port by software from 1992
Background
Since some time we've been in the possession of a greenhouse. It was build around 1990 and had an automated system for climate control. However most of the installation has been removed ...
1
vote
1
answer
1k
views
IDA/Hexrays: local variable allocation has failed; how to fix this?
I'm reverse engineering an old DOS game that's using the DOS/4GW extender. The game includes some libraries that I already successfully reversed in a different application, so I'm pretty sure that the ...
0
votes
1
answer
190
views
Within A Folder of 100s of 16-bit MS-DOS Disassembled EXEs Identify Ones That Need/Use DOS/4GW
So far I batch disassembled all files using following PowerShell and IDA:
$files = Get-Content S:\files.txt
ForEach ($file in $files)
{
Write-Host "Processing $file"
&"C:\Program Files\...
3
votes
1
answer
75
views
x86 disassembly confusion regarding VESA functions
I'm trying to disassemble an old DOS application and got stuck at some point of the VESA graphics handling.
The VESA function to be called will be stored in a global variable, e.g. ...
3
votes
2
answers
982
views
Trying to view sprites from an old game
I am looking to decompile the sprite data from an old DOS Game (Treasure Cove). If it helps any, I found that the game was written with the Borland C++ Programming Language.
It appears that the ...
0
votes
1
answer
787
views
Converting 2 bytes into date
I am trying to convert the following bytes into their corresponding dates.
I am not 100% on format the dates is stored, this format is returned from the application that read them.
Bytes Date ...
6
votes
3
answers
3k
views
Reverse Engineering (very) old DOS calculation program
I have recently joined a company that is specialized in air ducts & ventilation systems and I was quite surprised when I noticed that they are still using a DOS program to calculate the pressure ...
1
vote
2
answers
191
views
Assembly that just seems to be a jumble
I've disassembled an old DOS program into assembly and I'm trying to figure out a function call. Here is the ASM:
seg000:373C ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦...
7
votes
2
answers
2k
views
What's this assembly doing?
I have been trying to figure out the assembly for part of a DOS game and there is an operation that keeps getting called that uses all 4 registers. I can see what each line does but I can't for the ...
1
vote
1
answer
1k
views
Working with 16bit offsets and segments in Radare2
I have a simple DOS COM program which I want to analyse using Radare2:
USE16
ORG 100h
mov ax, cs
dec ax
mov ds, ax
mov dx, message+10h
mov ah, 9
int 21h
ret
message: db "Hello ...
10
votes
2
answers
839
views
How did this 80286 detection code work?
I'm poking through a disassembled 16-bit DOS game circa 1992. The original system requirements state that the game needs an IBM AT-compatible machine or later, with the 286 processor, to run. And ...
2
votes
0
answers
325
views
BasicCompiler: wanted binaries which BC.exe or QB.exe (compiler) generates
I was in charge of analyze and reverse engineering the old unknown EXE for past few month. The binary works on MS-DOS for NEC-PC98 (retro PC), old (20years more ago), nobody knows how it's made.
I ...
3
votes
1
answer
884
views
debugging a graphical msdos game
There is a DOS game I want to run through a debugger. I tried using (FreeDos)
DEBUG.COM over DosBox. But the problem is that this game uses graphics, and this messes up the output of DEBUG.COM.
Is ...
2
votes
1
answer
555
views
DOS Executable Segments
In a DOS EXE file, if I have sub1, sub2, and sub3, split between two code segments, how do I know which sub is in which segment? There seem to be no physical markers in the exe code.
I know the EXE ...
2
votes
0
answers
99
views
COBOLII-MB 2.xx
I have a really old cobol program that was used to store some data, the company is no loger active and the program had to receive a key every 3 months. What tools I can use to reverse a cobol program? ...
0
votes
2
answers
216
views
Issues rewriting portions of DOS app's assembly
I am working on editing an old DOS program's assembly, but I'm running into some odd issues.
I'm using IDA Pro 6.4 and a hex editor to patch. I'm code-caving the new data by removing old stuff never ...
3
votes
0
answers
1k
views
Reverse-engineering DOS game's data files
I would like to figure out the data format used by an old DOS game I used to play when I was a kid. That link includes a full download for all the files and it runs fine in DOSBox if you want to try ...
2
votes
2
answers
279
views
LE executable Fixup Record Table format
So I have started reverse engineering an old LE executable. So to get a better understanding of the format. I started by writing a parser for this format. Using the following resources I have made ...
4
votes
2
answers
3k
views
Is there a way to import debug/symbol information of a C++ DOS executable to IDA?
I have an old DOS program compiled using Borland C++ (1991 version)
The end of the executable contains many strings preceded by an underscore which looks like debug/symbol information :
eg: ...
2
votes
1
answer
3k
views
IDA Pro and recognized library functions
I start by saying that I'm completely new to the topic of reversing although I have many years of experience with programming in general.
I've some problems with automatic recognition of library ...
2
votes
2
answers
2k
views
Unrecognized procedures in IDA Pro
for hobby I'm just trying to reverse and old DOS game executable.
I'm quite new with reversing so I'm having hard time understanding some bits about IDA Pro. I let the program choose the best-fit ...
1
vote
1
answer
2k
views
DOS interrupt problem with int 21h 0ah
I have this assembly code that reads a string of 120 bytes. If I try to fill the buffer by pressing a key until it stops writing, the enter key doesn't work. I counted the characters and I found that ...
3
votes
1
answer
1k
views
Debugging a DOS4GW/Causeway packed program
I have a DOS program that I'm trying to reverse engineer. It uses the Causeway Extender(also known as DOS4GW) in order to load the program into 32-bit protected mode, and IDA Pro 5.0 cannot extract ...
13
votes
2
answers
3k
views
How can I find the source of a string in an old DOS game?
I am attempting to amend some strings in an old DOS game (FIFA International Soccer), specifically the names of players.
In the past it hasn't been too hard to pull off such a task on post-DOS games ...
1
vote
1
answer
2k
views
Change a text in DOS executables [closed]
We have a DOS executable program like to NC. How do we find and change a text or a ASCII art in it?
I'm a newbie in reverse.
5
votes
4
answers
1k
views
Any correlation between DOS Program Segment Prefix and the base address of loaded executable?
I'm using IDA to disassemble Test Drive III. It's a 1990 DOS game. The *.EXE has MZ format.
The game uses a number of anti-reversing features such as copying its code to segment (PSPseg+2be7) where ...
5
votes
1
answer
6k
views
How to start a DOS application in DOSbox in debug mode?
DOSbox compiled with --enable-debug=heavy option becomes a powerful reversing tool. Anytime I feel like checking the disassembly and memory state I just hit Alt+Pause.
But, what if I want to see the ...
6
votes
1
answer
3k
views
DOS program debug in IDA?
Does anybody know something hack to debug 16bit DOS program in IDA 6.1?
3
votes
3
answers
1k
views
Interrupt interception
I'm currently reading 40hex magazine regarding virus writing in the early 90's. They talk a lot there about interrupt intercepting Which is something security guys from anti viruses company will try ...