Jump to content

CamTron

Member
  • Posts

    286
  • Joined

  • Donations

    0.00 USD 
  • Country

    United States

Everything posted by CamTron

  1. I've also looked into writing a display driver for Windows 9x, and I could be wrong, but I doubt there's any WDM support for it at all, even in 98SE and ME (please correct me if I'm mistaken). For the curious, here's an overview on how display drivers work on 9x. Graphics drivers for 9x are basically the same model as they were in Windows 3.1. That is, a 16-bit (yes, still 16-bit even in Windows ME) DLL (commonly with a .drv filename) which initializes hardware and implements every single GDI drawing function. A few things changed in Windows 95. The first is that drivers no longer have to implement all of GDI themselves (a huge pain in the arse for anyone writing Windows 3.1 graphics drivers) and can just call a Windows provided library called DIBENG to do so. The second is the introduction of Plug and Play, which requires writing a VxD to interact with it. Since VxDs are ring-0 32-bit code, it was common practice to put a lot of the hardware functionality into the VxD and have the 16-bit driver call the VxD to perform tasks, since 32-bit code performs better. I'm not entirely sure how Direct3D and OpenGL fit into this picture, as I've never gotten to that point. I know OpenGL uses Installable Client Drivers (ICDs) which are DLLs that replace the functionality of the Windows-provided opengl32.dll. Those ICDs likely call into the VxD to interact with the hardware and provide acceleration. Short of Intel releasing the source code to their old Windows drivers (We all know that ain't happening. Only their Linux drivers are open-source), there's not much we can do. The only viable option I see is to leverage something like Gallium3D and Mesa to provide hardware acceleration. Gallium3D is supposed to be an OS-independent framework for graphics drivers, but it's quite complex and really geared towards systems like Linux and the BSDs, and it would be a massive amount of effort to port that to Windows 9x. However, if OpenGL is supported, Direct3D shouldn't be too difficult as WineD3D can implement Direct3D on top of OpenGL.
  2. I just use a simple FTP server app on my phone and connect to it wirelessly from pretty much any PC. FTP is widely supported from Windows 95 to Windows 11 and Linux and shows up just like a folder in Explorer. MTP is an absolute pain to get working unless you're on Windows 7 or above (even Linux has trouble supporting it) so I don't use that.
  3. Surprised nobody mentioned Visual Basic 6.0 yet. Back in the day, that's what coding beginners used to make simple apps, and it's an easy language to learn. Delphi is another great option, though Object Pascal language isn't used much outside of Delphi these days. If you want to get serious with programming, you should eventually learn C and C++. The Windows API is a C API, but it's quite low level, so not recommended for beginners. Microsoft created a few wrapper APIs like MFC and WTL to make things simpler, though. Believe it or not, the latest Visual Studio still supports writing C# apps that target .NET 2.0 and will run on Windows 98. However, running such an app on 98 requires installing the massive .NET framework which is annoying if all you need it for is a simple program.
  4. @jumper Is the source code for these newer versions available? It's been over a year. KernelEx is supposed to be an open source project, and having the source is crucial to continue development.
  5. I'd have to agree. I played around with KernelEx years ago trying to see what software I could run, and finding all the DLL tweaks and kext configurations is exhausting. The information on this is scattered across a bunch of very long forum threads, and it's difficult to wade through. It would be great if someone could consolidate it on a wiki.
×
×
  • Create New...