Dreamwolf[3D]640x400 Hardware scaling Update

Moderators: VasiliyRS, deluxux

User avatar
Ian Micheal
Developer
Posts: 3494
Contact:

Dreamwolf[3D]640x400 Hardware scaling Update

Post#1 » Wed Feb 10, 2021 8:36 am



Dream-wolf3D-SDL Update port
Update by Ian micheal Hardware scaling 640x400 New build makefile now works Custom SDL DMA Custom version of Chui SDL 1.2.9 just for this. Compiled for wolf3D fullversion Fast hardware scaling 640x400 on hardware DMA driver SDL Src now builds on kos1.3 included custom SDL with fixed controls and DMA hardware scaling Driver Update to new src base ADDED correct headers for building with chui's custom sdl version plus the changes i needed to do to fix all controls they dont work with normal chui version for dreamcast

This is updated to the new version 1.7
https://github.com/ianmicheal/Dream-wolf3D-SDL
All src and custom libs and plainfiles and cdi are there..
Download link SB CDI
https://mega.nz/file/eZg2iRRR#2SjZan55l ... lZyrWGdwV8

Dreamwolf 3D Spear of Destiny

I show you how to get the best framerate for both games.. enff to make it as good as many consoles ports but with the highres..
Course you want low res it's 100% speed main point of the update is 640x400 hardware scale driver.. Makes it just play-able




Link to SB CDI
https://mega.nz/file/vIhWBaRB#-ksZ3imtX ... 8Bz--R5pmI

Credits & Thanks:
Cyle Terry updated src base
OneThiryt8 for which parts of this port was based on his port, sdlWolf
BlueCrab who wrote parts of the swap disc menu
BlackAura for his menu code from nxDoom
Ripper for such a clean and friendly Wolfenstein 3D engine
Bero for the Dreamcast port of SDL, which this port uses -Chui for custom Dma and SDL
Dan Potter and team for KOS, which this port uses
Wolf4SDL by Moritz "Ripper" Kroll (http://www.chaos-software.de.vu - OFFLINE) Original Wolfenstein 3D by id Software (http://www.idsoftware.com) Modifications to r262 by Andy_Nonymous and others (http://diehardwolfers.areyep.com/viewtopic.php?t=6693)
Wolf4SDL is an open-source port of id Software's classic first-person shooter Wolfenstein 3D to the cross-platform multimedia library "Simple DirectMedia Layer (SDL)" (http://www.libsdl.org). It is meant to keep the original feel while taking advantage of some improvements mentioned in the list below.

Credits and info

Code: Select all

By Cyle Terry
1.6 <October 04, 2008>

Getting the DC port up-to-date
1.5 <May 25, 2008>

Mouse support
Weapon switch support
Controllers with C & Z button support
Command line parameters via 'params.txt' support
SOD mission pack support via menu
Commercial CD-ROM swap support
Credits & Thanks:

OneThiryt8 for which parts of this port was based on his port, sdlWolf
BlueCrab who wrote parts of the swap disc menu
BlackAura for his menu code from nxDoom
Ripper for such a clean and friendly Wolfenstein 3D engine
Bero for the Dreamcast port of SDL, which this port uses -Chui for custom Dma and SDL
Dan Potter and team for KOS, which this port uses
Wolf4SDL by Moritz "Ripper" Kroll (http://www.chaos-software.de.vu - OFFLINE) Original Wolfenstein 3D by id Software (http://www.idsoftware.com) Modifications to r262 by Andy_Nonymous and others (http://diehardwolfers.areyep.com/viewtopic.php?t=6693)
Wolf4SDL is an open-source port of id Software's classic first-person shooter Wolfenstein 3D to the cross-platform multimedia library "Simple DirectMedia Layer (SDL)" (http://www.libsdl.org). It is meant to keep the original feel while taking advantage of some improvements mentioned in the list below.

Main features:
Cross-platform: Supported operating systems are at least: - Windows 98, Windows ME, Windows 2000, Windows XP, Windows Vista (32 and 64 bit), Windows 7 (32 and 64 bit), Windows 10 (32 and 64 bit) - Linux - BSD variants - Mac OS X (x86) - KallistiOS (used for Dreamcast) Only little endian platforms like x86, ARM and SH-4 are currently supported.

AdLib sounds and music: This port includes the OPL2 emulator from MAME, so you can not only hear the AdLib sounds but also music without any AdLib-compatible soundcard in near to perfect quality!

Multichannel digitized sounds: Digitized sounds play on 8 channels! So in a fire fight you will always hear, when a guard opens the door behind you ;)

Higher screen resolutions: Aside from the original 320x200 resolution, Wolf4SDL currently supports any resolutions being multiples of 320x200 or 320x240, the default being 640x400. Unlike some other ports, Wolf4SDL does NOT apply any bilinear or similar filtering, so the graphics are NOT blurred but pixelated just as we love it.

Fully playable with only a game controller: Wolf4SDL can be played completely without a keyboard. At least two buttons are required (shoot/YES and open door/NO), but five or more are recommended (run, strafe, ESC).

Additional features:
Two additional view sizes: Wolf4SDL supports one view size using the full width of the screen and showing the status bar, like in Mac-enstein, and one view size filling the whole screen (press TAB to see the status bar).

(Nearly) unlimited sound and song lengths: Mod developers are not restricted to 64kB for digitized sounds and IMF songs anymore, so longer songs and digitized sounds with better quality are possible.

Resuming ingame music: When you come back to the game from the menu or load a save game, the music will be resumed where it was suspended rather than started from the beginning.

Freely movable pushwalls: Moving pushwalls can be viewed from all sides, allowing mod developers to place them with fewer restrictions. The player can also follow the pushwall directly instead of having to wait until the pushwall has left a whole tile.

Optional integrated features for mod developers: Wolf4SDL already contains the shading, directional 3D sprites, floor and ceiling textures, high resolution textures/sprites, parallax sky, cloud sky and outside atmosphere features, which can be easily activated in version.h.

The following versions of Wolfenstein 3D data files are currently supported by the source code (choose the version by commenting/uncommenting lines in version.h as described in that file):

Wolfenstein 3D v1.1 full Apogee
Wolfenstein 3D v1.4 full Apogee
Wolfenstein 3D v1.4 full GT/ID/Activision
Wolfenstein 3D v1.4 full Imagineer (Japanese)
Wolfenstein 3D v1.0 shareware Apogee
Wolfenstein 3D v1.1 shareware Apogee
Wolfenstein 3D v1.2 shareware Apogee
Wolfenstein 3D v1.4 shareware
Spear of Destiny full
Spear of Destiny demo
Spear of Destiny - Mission 2: Return to Danger (not tested)
Spear of Destiny - Mission 3: Ultimate Challenge (not tested)
How to play:
To play Wolfenstein 3D with Wolf4SDL, you just have to copy the original data files (e.g. *.WL6) into the same directory as the Wolf4SDL executable. Please make sure, that you use the correct version of the executable with the according data files version as the differences are hardcoded into the binary!

On Windows SDL.dll and SDL_mixer.dll must also be copied into this directory.

SDL 1.2.15 Runtimes can be acquired at: https://www.libsdl.org/download-1.2.php and download "SDL-1.2.15-win32.zip"

SDL_mixer 1.2.12 Runtimes can be acquired at: https://www.libsdl.org/projects/SDL_mixer/release-1.2.html and download "SDL_mixer-1.2.12-win32.zip"

! ATTENTION ! Do NOT download the x64 version of SDL or SDL_mixer. x86 binairies are required.

If you play in windowed mode (--windowed parameter), press SCROLLLOCK or F12 to grab the mouse. Press it again to release the mouse.

Usage:
Wolf4SDL supports the following command line options: --help This help page --tedlevel Starts the game in the given level --baby Sets the difficulty to baby for tedlevel --easy Sets the difficulty to easy for tedlevel --normal Sets the difficulty to normal for tedlevel --hard Sets the difficulty to hard for tedlevel --nowait Skips intro screens --windowed[-mouse] Starts the game in a window [and grabs mouse] --res Sets the screen resolution (must be multiple of 320x200 or 320x240) --resf Sets any screen resolution >= 320x200 (which may result in graphic errors) --bits Sets the screen color depth (Use this when you have palette/fading problem or perhaps to optimize speed on old systems. Allowed: 8, 16, 24, 32, default: "best" depth) --nodblbuf Don't use SDL's double buffering --extravbls Sets a delay after each frame, which may help to reduce flickering (SDL does not support vsync...) (unit is currently 8 ms, default: 0) --joystick Use the index-th joystick if available --joystickhat Enables movement with the given coolie hat --samplerate Sets the sound sample rate (given in Hz) --audiobuffer Sets the size of the audio buffer (-> sound latency) (given in bytes) --ignorenumchunks Ignores the number of chunks in VGAHEAD.* (may be useful for some broken mods) --configdir

Directory where config file and save games are stored (Windows default: current directory, others: $HOME/.wolf4sdl)
For Spear of Destiny the following additional options are available: --mission Mission number to play (1-3) --goodtimes Disable copy protection quiz

Compiling from source code:
The current version of the source code is available on GitHub at: https://github.com/AryanWolf3D/Wolf4SDL

The following ways of compiling the source code are supported:

Makefile (for Linux, BSD variants and MinGW/MSYS)
Visual C++ 2019 (Wolf4SDL.VC2019.sln and Wolf4SDL.VC2019.vcproj) (see README-VC.txt)
Visual C++ 2008 (Wolf4SDL.VC9.sln and Wolf4SDL.VC9.vcproj)
Visual C++ 2005 (Wolf4SDL.sln and Wolf4SDL.vcproj)
Visual C++ 6 (Wolf4SDL.dsw and Wolf4SDL.dsp)
Code::Blocks 8.02 (Wolf4SDL.cbp)
Dev-C++ 5.0 Beta 9.2 (4.9.9.2) (Wolf4SDL.dev) (see README-devcpp.txt)
Xcode (for Mac OS X, macosx/Wolf4SDL.xcodeproj/project.pbxproj)
Special compiling for Dreamcast (see README-dc.txt)
Special compiling for GP2X (see README-GP2X.txt)
To compile the source code you need the development libraries of

SDL (https://www.libsdl.org/download-1.2.php) and
SDL_mixer (https://www.libsdl.org/projects/SDL_mixer/release-1.2.html) and have to adjust the include and library paths in the projects accordingly.
Please note, that there is no official SDL_mixer development pack for MinGW, yet, but you can get the needed files from a Dev-C++ package here: http://sourceforge.net/project/showfiles.php?group_id=94270&package_id=151751 Just rename the file extension from ".devpack" to ".tar.bz2" and unpack it with for example WinRAR. Then add the directories include/SDL and lib to the according search paths in your project.

IMPORTANT: Do not forget to take care of version.h! By default it compiles for "Wolfenstein 3D v1.4 full GT/ID/Activision"!

TODOs:
Center non-ingame screens for resolutions being a multiple of 320x240
Add support for any graphic resolution >= 320x200
Known bugs:
None! ;D
Troubleshooting:
If your frame rate is low, consider using the original screen resolution (--res 320 200) or lowering the sound quality (--samplerate 22050)
Credits:
Special thanks to id Software! Without the source code we would still have to pelt Wolfenstein 3D with hex editors and disassemblers ;D
Special thanks to the DOSBox team for providing a GPL'ed OPL2/3 emulator!
Special thanks to the MAME developer team for providing the source code of the OPL2 emulator!
Many thanks to "Der Tron" for hosting the svn repository, making Wolf4SDL FreeBSD compatible, testing, bugfixing and cleaning up the code!
Thanks to Chris Chokan for his improvements on Wolf4GW (base of Wolf4SDL)
Thanks to Pickle for the GP2X support and help on 320x240 support
Thanks to fackue for the Dreamcast support
Thanks to Chris Ballinger for the Mac OS X support
Thanks to Xilinx, Inc. for providing a list of maximum-length LFSR counters used for higher resolutions of fizzle fade
Licenses:


Dream[wolf3D][Plainfiles].rar
(2.61 MiB) Downloaded 376 times
Last edited by Ian Micheal on Wed Feb 10, 2021 4:24 pm, edited 1 time in total.

User avatar
Ian Micheal
Developer
Posts: 3494
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#2 » Wed Feb 10, 2021 8:59 am

debug log

Code: Select all

OUTPUT:> KallistiOS ##version##: Wed Jan 13 04:25:00 GMTST 2021
OUTPUT:>   Administrator@experien-d037bf:/usr/local/dc/kos/kos
OUTPUT:> thd: pre-emption enabled, HZ=100
OUTPUT:> maple: active drivers:
OUTPUT:>     Dreameye (Camera): Camera
OUTPUT:>     Sound Input Peripheral: Microphone
OUTPUT:>     PuruPuru (Vibration) Pack: JumpPack
OUTPUT:>     VMU Driver: Clock, LCD, MemoryCard
OUTPUT:>     Mouse Driver: Mouse
OUTPUT:>     Keyboard Driver: Keyboard
OUTPUT:>     Controller Driver: Controller
OUTPUT:>   DMA Buffer at ac1a67e0
OUTPUT:> vid_set_mode: 640x480IL NTSC
OUTPUT:> dc-load console support enabled
OUTPUT:> maple: attached devices:
OUTPUT:>   A0: Dreamcast Controller          (01000000: Controller)
OUTPUT:>   A1: Visual Memory                 (0e000000: Clock, LCD, MemoryCard)
OUTPUT:> fs_iso9660: disc change detected
OUTPUT:>   (joliet level 3 extensions detected)
OUTPUT:> vid_set_mode: 640x480IL NTSC


I can show the old port running at the same res it's like a moving GIF

User avatar
FlorreW
chill
Posts: 298

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#3 » Wed Feb 10, 2021 9:50 am

Fantastic news , maybe I can use this with the mod I'm trying to do ! Awesome Ian

User avatar
Ian Micheal
Developer
Posts: 3494
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#4 » Wed Feb 10, 2021 9:58 am

FlorreW wrote:Fantastic news , maybe I can use this with the mod I'm trying to do ! Awesome Ian


It should work if not let me know the defines it needs and i can added them to the port for mods..

Lot of room for optimizing uncached memory buffers would speed it up more.. on demul this runs fullspeed now.. but i wanted to show what it runs now on real hardware..

I can also compile this for other version not just the main game.. or mods etc.. and param.txt you can force this back to 320x200 in the txt file it be super fast if you want to do that.. my main aim was just geting 640x400 play-able on a real dreamcast ..

check your DM i made it with your mod and it works fine :)
Last edited by Ian Micheal on Wed Feb 10, 2021 10:06 am, edited 1 time in total.

User avatar
-drez01-
Tank Jr.
Posts: 215

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#5 » Wed Feb 10, 2021 10:01 am

Great work Ian! Love to see it 8-)

User avatar
NeoSnk
Dead House
Posts: 371
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#6 » Wed Feb 10, 2021 10:22 am

This is awesome Ian! Do you think I should apply this new SDL version on my game too?

Great job man.
Homebrews + Tutorials + Interviews (Dreamcast/Sega Saturn): https://titangamestudios.com/

I'm Titan_Guy on PSO :)

User avatar
Ian Micheal
Developer
Posts: 3494
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#7 » Wed Feb 10, 2021 10:39 am

NeoSnk wrote:This is awesome Ian! Do you think I should apply this new SDL version on my game too?

Great job man.


I would not do that this version has fixed standard sdl joystick controls and only works on kos1.3 you have the best version for kos2.0.. i might have a go at up porting this to kos2.0 one time to add sd card support..

worked on this all night no sleep just to get it to build and so i could use the hardware scale driver in chui's sdl it was using the old sdl from bero in the old port and that only has swsurface that works correct no scaling or dma

User avatar
NeoSnk
Dead House
Posts: 371
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#8 » Wed Feb 10, 2021 11:11 am

Ian Micheal wrote:
NeoSnk wrote:This is awesome Ian! Do you think I should apply this new SDL version on my game too?

Great job man.


I would not do that this version has fixed standard sdl joystick controls and only works on kos1.3 you have the best version for kos2.0.. i might have a go at up porting this to kos2.0 one time to add sd card support..

worked on this all night no sleep just to get it to build and so i could use the hardware scale driver in chui's sdl it was using the old sdl from bero in the old port and that only has swsurface that works correct no scaling or dma


Got it, thanks man!
Homebrews + Tutorials + Interviews (Dreamcast/Sega Saturn): https://titangamestudios.com/

I'm Titan_Guy on PSO :)

User avatar
DarkVampire295
dark night
Posts: 53

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#9 » Wed Feb 10, 2021 2:12 pm

Great job Ian, You rock
Twitter @WayneBurke32

Best of luck, DV

User avatar
Ian Micheal
Developer
Posts: 3494
Contact:

Re: Dreamwolf[3D]640x400 Hardware scaling Update

Post#10 » Wed Feb 10, 2021 2:54 pm

DarkVampire295 wrote:Great job Ian, You rock

spear build coming next

also DCMC and mult bins that return to dcmc and can load other features in game

  • Similar Topics
    Replies
    Views
    Last post

Return to “New Games”

Who is online

Users browsing this forum: No registered users