https://github.com/efliks/megassembly
1990s-style graphical effects for MS-DOS
https://github.com/efliks/megassembly
assembler assembly demoscene dpmi graphical-effects mode13h ms-dos retrocomputing retroprogramming vga
Last synced: 8 months ago
JSON representation
1990s-style graphical effects for MS-DOS
- Host: GitHub
- URL: https://github.com/efliks/megassembly
- Owner: efliks
- License: gpl-3.0
- Created: 2024-05-10T22:47:16.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-25T18:01:06.000Z (over 1 year ago)
- Last Synced: 2025-04-10T05:51:16.114Z (12 months ago)
- Topics: assembler, assembly, demoscene, dpmi, graphical-effects, mode13h, ms-dos, retrocomputing, retroprogramming, vga
- Language: Assembly
- Homepage:
- Size: 303 KB
- Stars: 10
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# megassembly/32
Graphical effects for MS-DOS implemented in 32-bit x86 Assembly.
For some historical background, have a look at my
[other repository](https://github.com/efliks/demoscene-legacy).
I created a video featuring the effects. There is no sound! Make sure
to watch at 720p, and use playback speed of 2x if needed, as some parts
may be quite boring:
https://youtu.be/cQQqwRQsM3M
## Build
To build and run the graphical effects, you need a PC running some
version of DOS. It may also be a DOS VM or a DOS emulator, for example
DosBox or PCem.
Secondly, you need
[Borland Turbo Assembler 5.0](https://winworldpc.com/product/turbo-assembler/5x).
Once you have the assembler installed, start from building the common
modules. Simply run make in the common folder:
```
c:\mgssmbly\common > c:\tasm\bin\make.exe -f makefile
```
Then, repeat the above for each effect. Note that the paths to TASM and TLINK
in the makefile should match your Turbo Assembler installation folder.
## Execute
There are six executable files. Since they make use of protected mode, you
need a DPMI host.
You can download CWSDPMI at
[this location](https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/util/system/cwsdpmi/csdpmi7b.zip).
Unpack the archive and copy CWSDPMI.EXE into the main folder. Start
CWSDPMI.EXE first, and immediately after start the executable of your
choice. I know, this is inconvenient, but can be automated with
a simple batch file.
If you are using Win9x, do not bother with CWSDPMI, because Windows has
its own DPMI facility. You can start the effects directly.
When watching an effect, press [escape] to exit to DOS.
## To do?
* Implement timing based on the PC timer, not on VGA vertical retrace
* Combine the effects into one demo
* Use an embedded DOS extender