winevdm

What does it do?

This project runs 16-bit Windows programs, such as software for Windows 1.x, 2.x, 3.0, and 3.1, on 64-bit Windows. [1a][1b] It is an altered version of winevdm, a 16-bit Windows emulator, ported to 64-bit Windows. [2] For example, a user can drag and drop a Win16 executable file onto otvdm.exe or execute otvdmw.exe. [3]

Activity, over time

Daily GitHub activity and social mentions.

Mentions

Daily posts linking to this repository

Loading mentions chart

Attention

Daily stars & forks

Loading attention chart

Star accumulation

Cumulative stars

Loading star accumulation chart

Pull requests

Daily opens & merges

Loading pull requests chart

Conversations

Daily issues & comments

Loading conversations chart

Community

Daily accounts & reviews

Loading community chart

Mentions

19posts · 30d
Nov 50 posts
  1. If you don't fancy downloading the entire Windows 3.x library at once, you can always install this compatibility layer so you can run 16-bit Windows games on a 64-bit Windows installation otya128/winevdm

    1 like
  2. @slavyan654987 К слову, я нашёл программу, из-под которой можно запускать приложения для Win 3.x из 64-битной Винды: otya128/winevdm

    4 views
  3. Reddit · · r/computer_help · u/Altruistic_Dust6427

    How to Run Final Reality in a Win11 26H2 Environment Final Reality 1.01 (a benchmark program from 1998), which used to run on Windows 11 24H2 through 25H2, stopped working around Windows 26H2 update, displaying errors such as blit: dst->Blt DDERR_SURFACELOST or clearbuffer:srf->Blt DDERR_SURFACELOST and stopped working. I installed Final Reality 1.01 using otvdm and winevdm, copied the D3D8.dll, D3D9.dll, D3DImm.dll, and DDraw.dll files included with dgVoodoo2 2.87.6, and tried running FR.EXE in Windows XP SP2 compatibility mode, but it didn’t work. I also tried using a DirectX windowing tool—DxWnd 2.05.54—instead of dgVoodoo2, but that didn’t work either. How can I get Final Reality to launch the benchmark and run on a Windows 26H2 environment? Machine:Lenovo ThinkPad E495 OS: Windows11 26H2 (26300.9711) M/B: LENOVO 20NECTO1WW RAM:16GB GPU: AMD Radeon Vega 8 VRAM 1GB otvdm winevdm github.com/otya128/winevdm/releases dgVoodoo2 dege.freeweb.hu DxWnd sourceforge.net By the way, on Win95/98 running in DOSBOX-X, no matter how much I customized the DOSBOX-X or host OS settings, Final Reality ran too slowly to display properly.

    1 point · 1 comment
  4. @tomshardware Is that really the earliest 32-bit Windows application? Anyway, 16-bit apps can be made to work with OTVDM/WineVDM: otya128/winevdm

    10 views
  5. There's a translation layer for 16-bit Windows programs built to run on 64-bit Windows Found through Hacker News. #retrocomputing #windows Though it calls itself an emulator, from what I can tell, it's mostly akin to Wine, with only the CPU and DOS being emulated.

  6. 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows

  7. 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows otya128/winevdm (news.ycombinator.com)

    64 views
  8. 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows otya128/winevdm (news.ycombinator.com)

  9. Habr · · @opium

    Какая самая старая программа с GUI запускается на Windows 11 без эмуляции Начало поисков Меня давно занимал один несерьёзный вопрос: какая самая старая программа с графическим интерфейсом до сих пор запускается на Windows 11 без доработок и без эмуляции? Обратная совместимость у Windows отличная, так что я ожидал найти что-нибудь впечатляюще древнее. Увы, 16-битные программы для Windows сама Windows 11 запускать не умеет: в 64-битной Windows нет NTVDM. Значит, искать придётся среди программ ранней эпохи NT. Когда-то я задал этот вопрос на анонимном форуме, и мне посоветовали посмотреть на Win32s: найти одну из первых его версий, в комплекте с которой шёл FREECELL.exe. Так я и сделал. И правда: FREECELL.EXE с датой изменения 22-Feb-93 запускается на последней версии Windows 11 без каких-либо правок, и в него можно полноценно играть: FREECELL.EXE 1993 года На момент написания поста этой программе 33 года и 8 месяцев. Она почти моя ровесница, и это впечатляет. Я подумал «прикольно», счёл загадку разгаданной и вскоре о ней забыл. Но недавно вопрос почему-то снова всплыл в голове, и на этот раз я решил копнуть глубже: вдруг найдётся что-нибудь старше. Копаем дальше Я перебирал старые версии Windows в Internet Archive и нашёл несколько ранних предрелизных сборок NT 3.1, которые выглядели многообещающе. Но основная проблема, по-видимому, заключалась либо в несовместимости с нынешним форматом исполняемых файлов, либо в изменениях API, сделанных позже в ходе разработки. Самые ранние версии 1991 года использовали черновой вариант формата PE, несовместимый с современной Windows. А сборки до середины 1992 года при вызовах Windows API рассчитывали на соглашение о вызовах cdecl, а не stdcall. Из-за этого аргументы снимались со стека дважды: push hwnd ; 4 bytes of args call [ShowWindow] ; Win11 ShowWindow is stdcall, ends with "ret 4" and removes them add esp, 4 ; the 1992 caller removes them again sourcecraft.dev Прим. пер.: в комментариях к коду сказано, что вызывающий код кладёт на стек 4 байта аргументов, ShowWindow в Windows 11 следует stdcall и сама убирает их инструкцией ret 4, а код 1992 года после возврата снимает те же байты ещё раз. Пример у автора упрощён: на самом деле ShowWindow принимает два аргумента, то есть 8 байт на 32-битном x86, и заканчивается ret 8. Суть от этого не меняется: аргументы со стека снимаются дважды, и указатель стека после вызова оказывается не там, где его ждёт программа. Понятно, что программа от такого падает. Одно приложение всё же привлекло моё внимание. Это CDPLAYER.EXE из сборки 347, собранный (слинкованный) 16-Nov-1992. К тому времени соглашение о вызовах уже исправили, но остальные программы из этой сборки падают внутри своей встроенной библиотеки времени выполнения C. CDPLAYER.EXE этой участи избегает: он пользуется системной crtdll.dll, а Windows 11 до сих пор поставляет crtdll.dll в SysWOW64. Если запустить программу, вы увидите примерно такое: CDPLAYER.EXE: привод CD-ROM не найден Ну да, конечно: в моём компьютере нет привода CD-ROM. Но его можно сэмулировать небольшой DLL (cdemu.dll), которая подсовывает поддельные аудиоданные, и тогда программа действительно играет звук: CDPLAYER.EXE с эмулированным CD-ROM Неплохо для программы, которой почти 34 года! А если схитрить? Выше я говорил, что 16-битные программы выбывают из игры, потому что их больше не поддерживают. Но при желании старые программы для Windows можно запустить через что-нибудь вроде otvdm. Вот, полюбуйтесь: на Windows 11 работает полностью играбельный REVERSI.EXE с датой 15-Nov-1985, взятый из Windows 1.01: REVERSI.EXE из Windows 1.01 на Windows 11 Использовать otvdm — это, конечно, немного жульничество, но результат показался мне слишком классным, чтобы не включить его в пост.

  10. 16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows otya128/winevdm (news.ycombinator.com)

    6 views

Latest stargazers

The last 10 distinct accounts we observed this year.

Most active participants

PR, issue, comment & review events in the past year.

Packages

Scan pending.

Live mentions badge

Show how many posts mention your project in the last 30 days.

Live mentions · last 30 days