From 6570ba6153b1f439341538a56561e4108fa81641 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 6 May 2024 01:32:33 -0400 Subject: [PATCH] keen: work on story --- games/keen/graphics/Makefile | 12 ++- games/keen/graphics/keen1_story.png | Bin 0 -> 1227 bytes games/keen/story/Makefile | 21 ++++ games/keen/story/make_story.c | 18 ++++ games/keen/story/story.txt | 151 ++++++++++++++++++++++++++++ 5 files changed, 201 insertions(+), 1 deletion(-) create mode 100644 games/keen/graphics/keen1_story.png create mode 100644 games/keen/story/Makefile create mode 100644 games/keen/story/make_story.c create mode 100644 games/keen/story/story.txt diff --git a/games/keen/graphics/Makefile b/games/keen/graphics/Makefile index 5dbe76ad..ddc6f508 100644 --- a/games/keen/graphics/Makefile +++ b/games/keen/graphics/Makefile @@ -10,7 +10,8 @@ PNG2GR = ../../../utils/gr-utils/png2gr PNG2SPRITES = ../../../utils/gr-utils/png2sprites HGR_SPRITE = ../../../utils/hgr-utils/hgr_make_sprite -all: keen1_title.hgr.zx02 level1_bg.gr.zx02 parts.gr.zx02 +all: keen1_title.hgr.zx02 level1_bg.gr.zx02 parts.gr.zx02 \ + keen1_story.hgr.zx02 #### @@ -27,6 +28,15 @@ keen1_title.hgr: keen1_title.png #### +keen1_story.hgr.zx02: keen1_story.hgr + $(ZX02) keen1_story.hgr keen1_story.hgr.zx02 + +keen1_story.hgr: keen1_story.png + $(PNG_TO_HGR) keen1_story.png > keen1_story.hgr + + +#### + level1_bg.gr.zx02: level1_bg.gr $(ZX02) level1_bg.gr level1_bg.gr.zx02 diff --git a/games/keen/graphics/keen1_story.png b/games/keen/graphics/keen1_story.png new file mode 100644 index 0000000000000000000000000000000000000000..8631992f765b0bf4d93a3ab57adf0c71a5eb171e GIT binary patch literal 1227 zcmV;+1T_1JP)EX>4Tx04R}tkv&MmKp2MKrWQq79qb_DkfA!+MMWHI6^c+H)C#RSm|Xe?O&XFE z7e~Rh;NZ_<)xpJCR|i)?5c~mgc5qU3krKa43N2#1Ql81o(az=UM)Be~yS+uow^!i4)8)ZQ>2$nN8c^ zyiXiuWmzRYC!R3rg2azpS3G{>Tyk09nNc&FnJ11Ci={4Bx|o$sjd+?krfNFn3ptNf z&Rd+dYMr(3$zK>Q=qt-yr!|Tc7O?~gA{5k7K@~RQwCki;$k2Jx$3NowC2}d`s(_JW z0X1llT|f9A{O+w)oSO8K!bu?X;y52;K<_TlYB4lw*=$foQ{L0Uqw2)v)sH|2q$TcCf<>s$LArw>4udX>Hb4i16w z5@oOZyt}WvZ~xY``}YF|p>lh!i!(j|000tDOjJbx000}y0pv9P|NsBZTLBxI{*j+U z82|tP32;bRa{vGsOaK5FbOE2JKp+4B00(qQO+^Rj1qB8PF->fX%m4rY8FWQhbVF}# zZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0+>leK~#9!?U;#i!axuNCk0X}I_vfpI>bCq&01VvASO*OaQQ!r(c#*n(kv+GTA#mPj4Nj8oG9lDzf6wo z-0Y#DO()m%utKMPQTB}Q_t@A>voi{BUPTXHp(ja6r#X|0nX*^aclMk$Y3rybIn(aU zD>}~v9(x~b`mc2N2o9% z%Hz#6Xz>uJrN#I>X3oDhN$Tx&ZeDoBkitPsx_QW&wZeB|Okud_P1DjOpNlcOt$o)r zXU1hmG5G+|DQ38XN@_AOT0Nix*$BUAqm)EZ-k@DI9C4+ZmtKG>IA3 zN{2SQ?N0Gfch2}&F5}U*sod{(UF}l2mi`{&K1Zn-rx2K<8l8Bu-K;~*tfP{_rttTE zKYmmyeM`_Drl_Ua8J&G_dw#x)T8e!yJUBXI)#0I|rWY-0sU|<^kLA2*6SHRS`qNNN z)9BZ=T#FiCvsbk^Db6=3y^rh_D45#TS5>1tV~T2GX&*nklozYbqhSvS zwN!}HCdMCAvG3;4a#v`WI>%{J`>d(v%s7K)|5sT{w#|cWRb5k~U4N4`JJS-TV;R618081nLle7e=(++8)yIk002ovPDHLkV1k_qDd_+J literal 0 HcmV?d00001 diff --git a/games/keen/story/Makefile b/games/keen/story/Makefile new file mode 100644 index 00000000..1cf9a82d --- /dev/null +++ b/games/keen/story/Makefile @@ -0,0 +1,21 @@ +CFLAGS = -Wall -O2 -g +LFLAGS = + +ZX02 = ~/research/6502_compression/zx02.git/build/zx02 -f + +all: story_data.zx02 + +story_data.zx02: story_data.out + $(ZX02) story_data.out story_data.zx02 + +story_data.out: story.txt make_story + ./make_story < story.txt > story_data.out + +make_story: make_story.o + $(CC) $(LFLAGS) -o make_story make_story.c + +make_story.o: make_story.c + $(CC) $(CFLAGS) -c make_story.c + +clean: + rm -f *~ *.o make_story story_data.out story_data.zx02 diff --git a/games/keen/story/make_story.c b/games/keen/story/make_story.c new file mode 100644 index 00000000..5722c872 --- /dev/null +++ b/games/keen/story/make_story.c @@ -0,0 +1,18 @@ +#include + +int main(int argc, char **argv) { + + char string[BUFSIZ]; + char *result; + + int inverse=0; + + while(1) { + + result=fgets(string,BUFSIZ,stdin); + if (result==NULL) break; + printf("%s",string); + } + + return 0; +} diff --git a/games/keen/story/story.txt b/games/keen/story/story.txt new file mode 100644 index 00000000..34fcd451 --- /dev/null +++ b/games/keen/story/story.txt @@ -0,0 +1,151 @@ +#inverse + COMMANDER KEEN + IN + "INVASION OF THE VORTICONS" +#normal + + +BILLY BLAZE, EIGHT YEAR-OLD GENIUS, +WORKING DILIGENTLY IN HIS BACKYARD +CLUBHOUSE HAS CREATED AN INTERSTELLAR +STARSHIP FROM OLD SOUP CANS, RUBBER +CEMENT AND PLASTIC TUBING. WHILE HIS +FOLKS ARE OUT ON THE TOWN AND THE +BABYSITTER HAS FALLEN ASLEEP, BILLY +TRAVELS INTO HIS BACKYARD WORKSHOP, +DONS HIS BROTHER'S FOOTBALL HELMET, +AND TRANSFORMS INTO... + + COMMANDER KEEN--DEFENDER OF EARTH! + +IN HIS SHIP, THE BEAN-WITH-BACON +MEGAROCKET, KEEN DISPENSES GALACTIC +JUSTICE WITH AN IRON HAND! + + +#inverse + EPISONE ONE: MAROONED ON MARS +#normal + + +IN THIS EPISODE, ALIENS FROM THE +PLANET VORTICON VI FIND OUT ABOUT THE +EIGHT YEAR-OLD GENIUS AND PLAN HIS +DESTRUCTION. WHILE KEEN IS OUT +EXPLORING THE MOUNTAINS OF MARS, THE +VORTICONS STEAL VITAL PARTS OF HIS +SHIP AND TAKE THEM TO DISTANT MARTIAN +CITIES! CAN KEEN RECOVER ALL THE +PIECES OF HIS SHIP AND REPEL THE +VORTICON INVASION? WILL HE MAKE IT +BACK BEFORE HIS PARENTS GET HOME? +STAY TUNED! + +#inverse + WHAT THE VORTICONS HAVE STOLEN +#normal + +THE BEAN-WITH-BACOM MEGAROCKET WAS +CONSTRUCTED FROM OBJECTS AROUND THE +HOUSE THAT YOU HAVE "MODIFIED" INTO +STARSHIP PARTS: + +* JOYSTICK (FROM YOUR BROTHER'S VIDEO +GAME) MANUAL FLIGHT CONTROL. + +* CAR BATTERY (FROM YOUR MOM'S CAR) +ELECTRICAL SYSTEMS POWER + +* VACUUM CLEANER (FROM THE KITCHEN, +HEAVILY MODIFIED) ION PROPULSION UNIT +(WITH CARPET HEIGHT ADJUSTMENT). + +* EVERCLEAR (FROM YOUR DAD'S LIQUOR +CABINET) FUEL. + + +THE VORTICONS HAVE TAKEN THESE PIECES +TO THE FAR REACHES OF MARS AND ARE +GUARDING THEM. YOU MUST FIND THE +MEMBERS OF THIS VORTICON OUTPOST AND +WREST THE PARTS BACK FROM THEIR +WICKED, CLAWED HANDS! + +#inverse + INFORMATION ON MARS +#normal + +UNBEKNOWNST TO NASA, WHEN THE VIKING +LANDER SETTLED TO THE SURFACE OF MARS, +IT CAUSED A MAJOR POLITICAL UPHEVAL. +VIKING ACTUALLY LANDED ON THE DESPOTIC +MARTIAN KING! THE YORPS (THE +EXTREMELY FRIENDLY ONE-EYED MARTIANS) +WERE FREE FROM ENSLAVEMENT, AND THE +GARGS (THE VICIOUS, AGGRESSIVE +MARTIANS) WERE ANGRY. + +THE MARTIANS CREATED ROBOTS FOR MENIAL +WORK AND GUARD DUTIES. BEWARE OF THE +TANK-LIKE GUARD ROBOTS--THEY ARE VERY +GOOD AT WHAT THEY DO. + +MARTIANS HAVE BEEN VISITING EARTH IN +UFOS FOR DECADES. WHY? THEY COME TO +EARTH FOR ONE REASON--THEY WANT OUR +TOYS. HULA HOOPS AND SKATEBOARDS ARE +HOLY OBJECTS TO THEM! WHO KNOWS...YOU +MAY FIND SOME TOYS USEFUL! + +THERE ARE SIGNS EVERYWHERE. YOU +HAVEN'T BEEN ABLE TO DECIPHER THEM +YET.... + +#inverse + THE ADVENTURE BEGINS... +#normal + +YOUR TASK IS BEFORE YOU. GO GET 'EM, +COMMANDER KEEN! + +#inverse + +#normal + +AND DON'T MISS EPISODES TWO AND THREE +IN THE "INVASION OF THE VORTICONS" +TRILOGY! + + +#inverse + EPISODE TWO: THE EARTH EXPLODES +#normal + +KEEN HAS ASSEMBLED HIS SHIP AND +RETURNED HOME, ONLY TO FIND THE +VORTICON MOTHERSHIP HOVERING OVER THE +EARTH, READY TO DESTROY ALL OF EARTH'S +CITIES AND WONDERS! KEEN MUST SNEAK +ABOART, STOP THE IMMINENT DESTRUCTION +OF EARTH, AND FIND A WAY TO NEUTRALIZE +THE MOTHERSHIP! IF HE FAILS...THE +EARTH EXPLODES! (NO PRESSURE.) + +#inverse + EPISODE THREE: KEEN MUST DIE! +#normal + +KEEN FLIST TO THE PLANET VORTICON VI +TO ONCE AND FOR ALL RID THE GALAXY OF +THE VORTICON MENACE . THE ENTIRE +PLANET IS WAITING FOR HIS ARRIVAL, +WITH ONLY ONE ORDER GIVEN--COMMANDER +KEEN MUST DIE! WHAT EVIL BEING IS +BEHIND ALL THIS? STAY TUNED FOR THE +CLIMACTIC, SHOCKING FINALE! + + (..) COMMANDER KEEN SAYS: + /\ "YOU WON'T BELIEVE WHAT HAPPENS + IN EPISODE THREE!" + +#ESC TO EXIT / ARROWS TO READ