VOGONS


First post, by VileR

User metadata
Rank l33t
Rank
l33t

=====================================

Update - 2016/07/16: See here for Keen 5!

=====================================

Here's a fully-playable, 16-color enhancement for the original Commander Keen IV- Secret of the Oracle (CGA version), with code patched + graphics redrawn and reworked to support CGA's composite output capabilities.
Why, you ask? - just because I wanted to brush up on some skillz... and because John Carmack said that he never knew it could be done. 😁

keen4c16_a.png
Filename
keen4c16_a.png
File size
58.55 KiB
Views
15504 views
File license
Fair use/fair dealing exception
keen4c16_b.png
Filename
keen4c16_b.png
File size
46.99 KiB
Views
15504 views
File license
Fair use/fair dealing exception
keen4c16_c.png
Filename
keen4c16_c.png
File size
44.63 KiB
Views
15504 views
File license
Fair use/fair dealing exception

Links:

Requirements:

  • A copy of Commander Keen IV: Secret of the Oracle, v1.4-CGA, Apogee release. This can be downloaded here (thanks keropi).
    The executable should have this size and date stamp:      KEEN4C.EXE       98,007     01-Feb-92
  • DOS 3.3+
  • 8088 or higher (runs fine at 4.77MHz, but rather slow)
  • ~540 KB of free RAM
  • A true IBM CGA card driving a composite monitor or TV

Or, you could just try it out in DOSBox. I highly recommend a current SVN snapshot, patched with reenigne's latest composite CGA improvements (plus the updated experimental PC speaker patch, if you want authentic SFX).
These patches may need some manual editing for applying to current SVN, but if you're on Windows, you can use my pre-baked build based on SVN-r3980 with the two patches applied (this is what I used to record the video).

Enjoy...

Last edited by VileR on 2016-07-16, 09:49. Edited 4 times in total.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 2 of 56, by keenmaster486

User metadata
Rank l33t
Rank
l33t

😲 😁
All of a sudden the 5150 became 250% more useful to me 😀
Can this patch be applied to Keens 5 and 6 or Keen Vorticons?
The PCKF will be VERY interested in this, particularly as a patch for the source code. Can you post it there?

World's foremost 486 enjoyer.

Reply 3 of 56, by Scali

User metadata
Rank l33t
Rank
l33t
keenmaster486 wrote:

Can this patch be applied to Keens 5 and 6 or Keen Vorticons?

You mean patching the EXEs so that they behave properly for composite CGA, so that modders can make their own CGA graphics for those versions?
Well yes, but each version of Keen would need to be patched separately, as they have slightly different engines. So it will require a bit of reverse-engineering to get the patch right for each version.

Anyway, fantastic job, both on the patching and the redrawing of the graphics, VileR!
Can't wait to see what Carmack will say! 😀

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 4 of 56, by keropi

User metadata
Rank l33t++
Rank
l33t++

excellent work once again VileRancour , thanks for making this!!!!

edit:
anyone looking for the 1.4 CGA Apogee version you can grab a copy here: http://www.shikadi.net/keenwiki/Keen_4_Versions

Last edited by keropi on 2016-05-22, 22:32. Edited 1 time in total.

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 5 of 56, by VileR

User metadata
Rank l33t
Rank
l33t
bjt wrote:

This is awesome, thanks! Will try it on my 5160 ASAP!

Cool! It'll work, although it probably wouldn't be very playable speed-wise on a 'stock' 4.77MHz 5160. (The in-memory patcher adds around 10-15 seconds to the loading time at that speed, too... this may be improved in the future though).

keenmaster486 wrote:

Can this patch be applied to Keens 5 and 6 or Keen Vorticons?

See Scali's reply -- plus all of the graphics data for 5 and 6 would have to be reworked as well, and that was honestly the most time-consuming part...
(Sadly, Vorticons will never work, unless the engine is totally overhauled to support CGA.)

The PCKF will be VERY interested in this, particularly as a patch for the source code. Can you post it there?

I don't have an account there, nor is there a patch for the source code (don't think the source for 4 was ever published)... however, NY00123 indicated that he'd post it there, which is fine by me.

Scali wrote:

Anyway, fantastic job, both on the patching and the redrawing of the graphics, VileR!

Thanks, and for the testing as well 😀

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 6 of 56, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
VileRancour wrote:

nor is there a patch for the source code (don't think the source for 4 was ever published)

I was thinking of that again just recently. What happened there? I know the source code was found, and I thought at some point I heard that it ended up on Github, but did anyone ever do something useful with it? (Even just fixing the weird VGA compatibility issues would be a boon, it seems.)

Reply 8 of 56, by VileR

User metadata
Rank l33t
Rank
l33t
Jorpho wrote:

I was thinking of that again just recently. What happened there? I know the source code was found, and I thought at some point I heard that it ended up on Github, but did anyone ever do something useful with it? (Even just fixing the weird VGA compatibility issues would be a boon, it seems.)

Yeah, I'm not sure - I do remember some big noise being made about recovering the sources, but nothing surfaced. What did make it to github is Keen Dreams (https://github.com/keendreams/keen), but that one never had an Apogee release; I suspect that the other games will never have their sources published, as long as they're being sold on Steam that is.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 10 of 56, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Here's the story so far on the Keen source:

Yes, the Keen Dreams code was released as GPL, I forget what version.

That code was "upgraded" by the Atroxian Realm (a most excellent fangame) development team (with various bits of code from Catacomb 3D, Wolf3D, et al, plus a lot of newly written code) to replicate the functionality of the original Galaxy engine.

Then NY00123 released his "tech demo" which was basically the Atroxian Realm source code (I think, correct me if I'm wrong).

Then early this year lemm (on the PCKF) released the "Keen Source Mod" (cksrcmod) which is the Atroxian Realm source code, cleaned up with code added to support all three Galaxy episodes (so if you make some insignificant modifications and compile the code, it will work as an executable for Keens 4, 5, and 6) and vanilla Keen 4 graphics with one demo level tacked on, ready to edit and mod with Abiathar (an excellent Keen level editor by Fleexy). If I'm not mistaken, the cksrcmod is effectively the same as having the Keen Galaxy source code.

Currently there is development going on at Keen:Modding for upgrading cksrcmod to use Wolf3D's VGAGRAPH, effectively giving us the VGA Keen we should have had in 1992.

Anybody correct me if there's any wrong information there 😀

World's foremost 486 enjoyer.

Reply 11 of 56, by x86++

User metadata
Rank Newbie
Rank
Newbie

Atroxian Realm source code (NY00123 is credited for programming assistance): http://www.pckf.com/viewtopic.php?p=79056 and http://www.shikadi.net/keenwiki/Atroxian_Realm.

Also, the above 16-color CGA demo has worse graphics quality than the original 4-color CGA version(s). For others: keen4 also has an EGA version which is higher quality than CGA and both also include a soundblaster option instead of pc speaker.

Reply 12 of 56, by leileilol

User metadata
Rank l33t++
Rank
l33t++
x86++ wrote:

Also, the above 16-color CGA demo has worse graphics quality than the original 4-color CGA version(s). For others: keen4 also has an EGA version which is higher quality than CGA and both also include a soundblaster option instead of pc speaker.

---------------------------------------------------------------------------------------------------------->Point

your head

apsosig.png
long live PCem

Reply 13 of 56, by SquallStrife

User metadata
Rank l33t
Rank
l33t
x86++ wrote:

keen4 also has an EGA version which is higher quality than CGA and both also include a soundblaster option instead of pc speaker.

NO WAY?!?!?!? REALLY???

VogonsDrivers.com | Link | News Thread

Reply 14 of 56, by VileR

User metadata
Rank l33t
Rank
l33t

...see, that's where I'd normally ask the person about the decision-making process behind posting such a triple whammy of Captain Obvious, but perhaps some things are best left unanswered. 😉

keenmaster486 wrote:

Currently there is development going on at Keen:Modding for upgrading cksrcmod to use Wolf3D's VGAGRAPH, effectively giving us the VGA Keen we should have had in 1992.

Now *that* may be interesting to have a look at - any info/discussion links on that?

Anyway, if the AR/cksrcmod codebase is similar enough to Galaxy internally, it should be simple enough to add a composite CGA display option (the changes are listed in the readme, although not in much detail - I could probably help with specifics if needed).
What may be more interesting is to try and optimize the engine for better performance on slow CPUs - I know that Scali has already had some ideas...

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 16 of 56, by keropi

User metadata
Rank l33t++
Rank
l33t++

took some photos , no real monitor though - we have to settle for ntsc-aware tv sets here.... 😐

IM3zboO.jpg

wjXKxiS.jpg

EcqYg5h.jpg

tCVBMuk.jpg

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 17 of 56, by VileR

User metadata
Rank l33t
Rank
l33t
keropi wrote:

took some photos , no real monitor though - we have to settle for ntsc-aware tv sets here.... 😐

Looks good enough on this set! Thanks for sharing.
It's difficult to tell from the photos, but does your TV have a comb filter? (I think I see the telltale transitions on scanlines immediately below sharp horizontal edges.) That's something I could have exploited to improve some of the graphics maybe (see here)... but for the sake of notch-filter-only displays, it's probably a good thing I didn't.
BTW, must've missed your previous post- thanks for the download link for the original, added it to the OP.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 18 of 56, by keropi

User metadata
Rank l33t++
Rank
l33t++

^ yeah it looks good (luckily)!
Only the "later era" crt tvs I found here can recognize NTSC signal properly and display it in color, so it's almost certain that there is some filter applied to the image. I remember back when I was testing the CGA with various sets I found that I liked more the image that a 2003 14" trinitron set produced. Will try and put some pics of that in a couple of days, when both tv+xt are in the same place again 😀
Once again excellent work, on a V20/10mhz the game is very playable and the color is a great bonus!

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 19 of 56, by NY00123

User metadata
Rank Member
Rank
Member

FILE LINK EDIT (MAY 30): Minor updates to .PAT file from VileR; A few groups of patch lines were consolidated, and some bits of unnecessary code were removed (disabling/enabling interrupts across a single port write).

Hey there,

Nice to see that you finally posted about the project, VileR! (As you all can see, I've known about this beforehand.)

Let's begin with an alternative download link to the mod, also bundled with the original keen4c game: http://www.filedropper.com/keen4c16complete20160530

I should tell, that I wasn't really familiar with CGA composite graphics (except for maybe mono graphics), and even in these days, out of the DOS games I play, I don't usually try such games. It doesn't change the fact that this is surely some impressive graphics work!

Now, let's clarify a bit of confusion regarding random sources which were made available:
* To begin with, back on June of 2014, original sources for Hovertank and the whole Catacombs series were made available by Flat Rock Software: https://github.com/FlatRockSoft/.
* For one visual example of how are some of the sources related, you can check the menu from Catacomb 3-D (and compare to Keen 4-6). In terms of tech, especially the ID Engine, Keen Dreams & 4-6, and Catacomb 3-D, are very similar. In fact, Keen 4-6 and Catacomb 3-D use the same revision of the ID Engine (maybe with a few changes). As for Hovertank, I think it's closer to Keen 1-3 in certain ways, but not exactly. Maps use the same format as in Keen 1-3, while the graphics are a variant of EGAGRAPH as found in Keen Dreams & 4-6 and Catacomb 3-D.
* On September of the same year, Keen Dreams sources (for multiple versions) were made available, after the Keen Dreams rights changed ownership (not getting into details about this here): https://github.com/keendreams/keen
* Unfortunately, it looks like we won't see any of the Keen 1-6 sources, although they were found and there was an attempt to get these (or at least 1-5) released ~2 years ago.
* By taking half of the Catacomb 3-D sources (the ID Engine) and half of Keen Dreams (let's call it "The Game Part"), I made up Keen Dreams: Unofficial Tech Demo. Example of a noticeable change is again the Keen 4-6 style menu (including the pong game). Link to original topic: http://www.pckf.com/viewtopic.php?t=3196
* Later, lemm took advantage of this Tech Demo as a base for the Atroxian Realm mod. Originally, this mod started based on EXE patching, like various preceding mods, but eventually it morphed into a source mod. Link to release topic: http://www.pckf.com/viewtopic.php?t=3536
* Sometime, later, lemm released cksrcmod, a minimal Keen Galaxy modding package based on AR. Topic: http://www.pckf.com/viewtopic.php?t=3567

Last edited by NY00123 on 2016-05-30, 20:57. Edited 1 time in total.