liskon_frotz.git
6 years agoChange dumb frotz over to SDL's style of error checking message.
David Griffith [Wed, 1 Aug 2018 05:10:33 +0000 (22:10 -0700)]
Change dumb frotz over to SDL's style of error checking message.

6 years agoIgnore generated defines files.
David Griffith [Wed, 1 Aug 2018 04:54:55 +0000 (21:54 -0700)]
Ignore generated defines files.

6 years agoAdd unmentioned build targets of "curses" and ncurses".
David Griffith [Wed, 1 Aug 2018 04:53:24 +0000 (21:53 -0700)]
Add unmentioned build targets of "curses" and ncurses".

6 years agoAdd blurb when a library or target is finished.
David Griffith [Wed, 1 Aug 2018 04:47:40 +0000 (21:47 -0700)]
Add blurb when a library or target is finished.

6 years agoAdd -I flag to SDL Frotz to allow for setting the interpreter number.
David Griffith [Wed, 1 Aug 2018 04:21:59 +0000 (21:21 -0700)]
Add -I flag to SDL Frotz to allow for setting the interpreter number.

6 years agoUpdate manpages for frotz and dfrotz with -I (interpreter number) stuff.
David Griffith [Tue, 31 Jul 2018 20:18:05 +0000 (13:18 -0700)]
Update manpages for frotz and dfrotz with -I (interpreter number) stuff.

More stuff in the manpages needs to be done, particularly addressing old URLs.

6 years agoAdd mention of the -I flag (set interpreter number) to dumb and curse manpages.
David Griffith [Tue, 31 Jul 2018 20:10:21 +0000 (13:10 -0700)]
Add mention of the -I flag (set interpreter number) to dumb and curse manpages.

6 years agoAdd -I flag to curses Frotz to allow for setting the interpreter number.
David Griffith [Tue, 31 Jul 2018 20:09:54 +0000 (13:09 -0700)]
Add -I flag to curses Frotz to allow for setting the interpreter number.

6 years agoMake regular info display for sfrotz look similar to frotz and dfrotz.
David Griffith [Tue, 31 Jul 2018 18:50:39 +0000 (11:50 -0700)]
Make regular info display for sfrotz look similar to frotz and dfrotz.

6 years agoAdd "Curses interface" to curses interface regular info display.
David Griffith [Tue, 31 Jul 2018 18:37:28 +0000 (11:37 -0700)]
Add "Curses interface" to curses interface regular info display.

6 years agoAdd version info command line option to SDL interface.
David Griffith [Tue, 31 Jul 2018 10:33:53 +0000 (03:33 -0700)]
Add version info command line option to SDL interface.

6 years agoFix ARFLAGS omission.
David Griffith [Tue, 31 Jul 2018 10:33:23 +0000 (03:33 -0700)]
Fix ARFLAGS omission.

6 years agoAdd mention of curses interface in curses interface version info.
David Griffith [Tue, 31 Jul 2018 10:15:13 +0000 (03:15 -0700)]
Add mention of curses interface in curses interface version info.

6 years agoDelete short commit hash from curses interface version info.
David Griffith [Tue, 31 Jul 2018 10:13:46 +0000 (03:13 -0700)]
Delete short commit hash from curses interface version info.

6 years agoAdd build timestamp to dumb interface version info.
David Griffith [Tue, 31 Jul 2018 10:09:46 +0000 (03:09 -0700)]
Add build timestamp to dumb interface version info.

6 years agoIgnore a dist subdirectory.
David Griffith [Tue, 31 Jul 2018 10:03:20 +0000 (03:03 -0700)]
Ignore a dist subdirectory.

6 years agoGet version string from Git instead of the Makefile.
David Griffith [Tue, 31 Jul 2018 09:58:38 +0000 (02:58 -0700)]
Get version string from Git instead of the Makefile.

If I need access to the major or minor portion of the version/tag
string, I'll just add some C code where appropriate when the time comes.

6 years agoPut Git branch, hash, short hash, and tag into Makefile when doing "make dist".
David Griffith [Tue, 31 Jul 2018 09:37:17 +0000 (02:37 -0700)]
Put Git branch, hash, short hash, and tag into Makefile when doing "make dist".

6 years agoFixup the Git stuff in preparation for editing Makefile when doing "make dist".
David Griffith [Tue, 31 Jul 2018 09:30:46 +0000 (02:30 -0700)]
Fixup the Git stuff in preparation for editing Makefile when doing "make dist".

6 years agoIgnores for *.swp, *.tar, and *.gz.
David Griffith [Tue, 31 Jul 2018 09:07:43 +0000 (02:07 -0700)]
Ignores for *.swp, *.tar, and *.gz.

6 years agoFix broken use of "git archive".
David Griffith [Tue, 31 Jul 2018 09:06:31 +0000 (02:06 -0700)]
Fix broken use of "git archive".

6 years agoAdd MAKEFLAGS option to keep output of parallel builds readable.
David Griffith [Tue, 31 Jul 2018 08:03:45 +0000 (01:03 -0700)]
Add MAKEFLAGS option to keep output of parallel builds readable.

6 years agoPrettifying the "Generating" stuff.
David Griffith [Tue, 31 Jul 2018 08:03:01 +0000 (01:03 -0700)]
Prettifying the "Generating" stuff.

6 years agoForgot these $(RANLIB) substitutions.
David Griffith [Tue, 31 Jul 2018 07:47:01 +0000 (00:47 -0700)]
Forgot these $(RANLIB) substitutions.

6 years agoChange strrchr() to my_strrchr() to allow for use when there IS a strrchr().
David Griffith [Tue, 31 Jul 2018 07:26:56 +0000 (00:26 -0700)]
Change strrchr() to my_strrchr() to allow for use when there IS a strrchr().

6 years agoFix NO_STRRCHR for consistency.
David Griffith [Tue, 31 Jul 2018 06:56:55 +0000 (23:56 -0700)]
Fix NO_STRRCHR for consistency.

6 years agoDelete useless exports.
David Griffith [Tue, 31 Jul 2018 06:53:42 +0000 (23:53 -0700)]
Delete useless exports.

6 years agoFix typo in targets for uninstalling curses frotz.
David Griffith [Tue, 31 Jul 2018 06:21:44 +0000 (23:21 -0700)]
Fix typo in targets for uninstalling curses frotz.

6 years agoRemove phonies for version.c to avoid repeated recompilation.
David Griffith [Tue, 31 Jul 2018 06:20:44 +0000 (23:20 -0700)]
Remove phonies for version.c to avoid repeated recompilation.

6 years agoDelete unused library compilation targets.
David Griffith [Tue, 31 Jul 2018 06:08:27 +0000 (23:08 -0700)]
Delete unused library compilation targets.

6 years agoClean up the clean target.
David Griffith [Tue, 31 Jul 2018 06:02:57 +0000 (23:02 -0700)]
Clean up the clean target.

6 years agoPut back building of src/common/version.c
David Griffith [Tue, 31 Jul 2018 05:59:56 +0000 (22:59 -0700)]
Put back building of src/common/version.c

6 years agoComment out some extern declarations for variables only used locally.
David Griffith [Tue, 31 Jul 2018 05:30:28 +0000 (22:30 -0700)]
Comment out some extern declarations for variables only used locally.

6 years agoClean up Makefiles re exported variables.
David Griffith [Mon, 30 Jul 2018 11:22:57 +0000 (04:22 -0700)]
Clean up Makefiles re exported variables.

6 years agoMoved stuff that shouldn't be edited to past the end of editable stuff.
David Griffith [Mon, 30 Jul 2018 11:04:33 +0000 (04:04 -0700)]
Moved stuff that shouldn't be edited to past the end of editable stuff.

6 years agoTweak wording of Frotz homepage mention.
David Griffith [Mon, 30 Jul 2018 10:54:16 +0000 (03:54 -0700)]
Tweak wording of Frotz homepage mention.

6 years agoAdd mention of the default make target being "all".
David Griffith [Sat, 28 Jul 2018 04:00:31 +0000 (21:00 -0700)]
Add mention of the default make target being "all".

6 years agoClean up build targets and build help.
David Griffith [Sat, 28 Jul 2018 03:57:50 +0000 (20:57 -0700)]
Clean up build targets and build help.

6 years agoAdded distclean build target.
David Griffith [Sat, 28 Jul 2018 03:37:38 +0000 (20:37 -0700)]
Added distclean build target.

6 years agoFixed problem with sfrotz needlessly recompiling.
David Griffith [Sat, 28 Jul 2018 03:30:38 +0000 (20:30 -0700)]
Fixed problem with sfrotz needlessly recompiling.

Something about a header file names "defines.h" causes it to never
be up-to-date?  So I changed it to "defs.h".

6 years agoAdd 661.org Frotz page to README.
David Griffith [Sat, 28 Jul 2018 02:16:54 +0000 (19:16 -0700)]
Add 661.org Frotz page to README.

6 years agoChange Frotz homepage to 661.org and add short commit git hash.
David Griffith [Sat, 28 Jul 2018 02:03:42 +0000 (19:03 -0700)]
Change Frotz homepage to 661.org and add short commit git hash.

6 years agoFixed and tested old memmove() replacement and moved from curses to common.
David Griffith [Fri, 27 Jul 2018 03:55:54 +0000 (20:55 -0700)]
Fixed and tested old memmove() replacement and moved from curses to common.

6 years agomy_strdup() tweaks for dumb interface.
David Griffith [Fri, 27 Jul 2018 03:52:30 +0000 (20:52 -0700)]
my_strdup() tweaks for dumb interface.

6 years agoAdd header guards and fix duplicated defines for compiling with no sound.
David Griffith [Thu, 26 Jul 2018 22:35:57 +0000 (15:35 -0700)]
Add header guards and fix duplicated defines for compiling with no sound.

7 years agoDelete mention of Frotz website. Not sure if I should put one up again.
David Griffith [Tue, 5 Jun 2018 22:54:45 +0000 (15:54 -0700)]
Delete mention of Frotz website.  Not sure if I should put one up again.

7 years agoUpdate README with new repository host.
David Griffith [Tue, 5 Jun 2018 22:41:52 +0000 (15:41 -0700)]
Update README with new repository host.

7 years agoUpdate gopher mirror of the IF Archive
David Griffith [Sun, 3 Jun 2018 12:55:26 +0000 (05:55 -0700)]
Update gopher mirror of the IF Archive

7 years agoMerge pull request #78 from tkorvola/sdl-tweaks
David Griffith [Sun, 15 Apr 2018 04:05:04 +0000 (21:05 -0700)]
Merge pull request #78 from tkorvola/sdl-tweaks

Sdl tweaks

7 years agoTweak dependency generation options.
Timo Korvola [Thu, 12 Apr 2018 21:45:03 +0000 (00:45 +0300)]
Tweak dependency generation options.

Add -MP, which creates a dummy rule for each header.  Drop -MF, which
appears redundant.

7 years agoDrop some unused vars.
Timo Korvola [Tue, 10 Apr 2018 17:34:10 +0000 (20:34 +0300)]
Drop some unused vars.

7 years agoSDL: delete key for editing.
Timo Korvola [Sun, 8 Apr 2018 19:20:00 +0000 (22:20 +0300)]
SDL: delete key for editing.

7 years agoFix expose handling.
Timo Korvola [Mon, 2 Apr 2018 08:52:16 +0000 (11:52 +0300)]
Fix expose handling.

It is not enough to just call SDL_RenderPresent.  The frame must be
rendered first, i.e., copied from texture.  This fixes fullscreen
toggling as well.

7 years agoFullscreen toggling.
Timo Korvola [Sun, 1 Apr 2018 21:02:52 +0000 (00:02 +0300)]
Fullscreen toggling.

Alt-CR now toggles fullscreen mode.  To simplify matters video mode
switching and the -D option are gone: we always use the current
video mode and let SDL scale the window for fullscreen.

There is a strange bug: the display is not immediately updated after
toggling fullscreen but only after the next key press.  I don't
understand why.

7 years agoUse $@ instead of $(COMMON_DIR)/git_hash.h.
David Griffith [Sat, 31 Mar 2018 12:25:43 +0000 (05:25 -0700)]
Use $@ instead of $(COMMON_DIR)/git_hash.h.

7 years agoMerge pull request #77 from tkorvola/sdl2
David Griffith [Fri, 30 Mar 2018 06:24:00 +0000 (23:24 -0700)]
Merge pull request #77 from tkorvola/sdl2

Switch to SDL 2

7 years agoHandle expose events.
Timo Korvola [Wed, 28 Mar 2018 18:37:51 +0000 (21:37 +0300)]
Handle expose events.

Expose events are handled even in os_tick.

7 years agoFix indentation messed up by merging.
Timo Korvola [Wed, 28 Mar 2018 11:15:10 +0000 (14:15 +0300)]
Fix indentation messed up by merging.

Most of the code remains formatted in the original author's rather
original style.  I have reformatted some functions that I have been
working with to K & R style.

7 years agoSet SDL_HINT_IME_INTERNAL_EDITING.
Timo Korvola [Mon, 26 Mar 2018 23:19:56 +0000 (02:19 +0300)]
Set SDL_HINT_IME_INTERNAL_EDITING.

7 years agoTry to use text input where appropriate.
Timo Korvola [Mon, 26 Mar 2018 22:57:47 +0000 (01:57 +0300)]
Try to use text input where appropriate.

os_read_key uses text input because it may be called from Z-code,
which expects to be able to read characters.  More prompts etc.
do not use text input.

7 years agoHandle SDL_TEXTINPUT events.
Timo Korvola [Mon, 26 Mar 2018 22:03:29 +0000 (01:03 +0300)]
Handle SDL_TEXTINPUT events.

Currently text input is enabled only for os_read_line.  SDL_TEXTEDITING
events are not handled.

7 years agoFullscreen mouse.
Timo Korvola [Mon, 26 Mar 2018 17:13:42 +0000 (20:13 +0300)]
Fullscreen mouse.

Apparently there is almost nothing to do here: just make sure to set
the logical size whenever in fullscreen, and SDL maps mouse events
to logical coordinates.

7 years agoFirst take on switching to SDL 2.
Timo Korvola [Sun, 25 Mar 2018 19:31:50 +0000 (22:31 +0300)]
First take on switching to SDL 2.

Compiles and somewhat works.  Mouse positions are not properly
mapped in fullscreen mode (window mode seems to work).
SDL_TEXTINPUT events are not yet handled; only lower-case ASCII
keyboard input for now.

7 years agoFix 8-bit characters in dialogs.
Timo Korvola [Wed, 28 Mar 2018 16:32:41 +0000 (19:32 +0300)]
Fix 8-bit characters in dialogs.

We don't handle file name encoding though, and that is a mess in the OS
world as well.  Thus only Latin-1 encoded file names are likely to work.

7 years agoIgnore generated version.c.
Timo Korvola [Wed, 28 Mar 2018 16:17:45 +0000 (19:17 +0300)]
Ignore generated version.c.

7 years agoMerge pull request #74 from tkorvola/misc
David Griffith [Wed, 28 Mar 2018 11:09:44 +0000 (04:09 -0700)]
Merge pull request #74 from tkorvola/misc

More build & sfrotz fixes

7 years agoDon't leak curses sound options elsewhere.
Timo Korvola [Tue, 27 Mar 2018 20:19:12 +0000 (23:19 +0300)]
Don't leak curses sound options elsewhere.

7 years agosfrotz requires -lm.
Timo Korvola [Tue, 27 Mar 2018 20:05:34 +0000 (23:05 +0300)]
sfrotz requires -lm.

7 years agoGet rid of common/defines.h.
Timo Korvola [Tue, 27 Mar 2018 19:32:39 +0000 (22:32 +0300)]
Get rid of common/defines.h.

Version info is now in common/version.c, the only file that needs
to be recompiled every time.  Global constants, not defines.
The declarations are in frotz.h.

7 years agoImproved dependency management.
Timo Korvola [Tue, 27 Mar 2018 18:07:28 +0000 (21:07 +0300)]
Improved dependency management.

Adapted (simplified) from
http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/

7 years agoRemove getexepath.
Timo Korvola [Tue, 27 Mar 2018 14:16:57 +0000 (17:16 +0300)]
Remove getexepath.

getexepath was unportable but fortunately unused.

7 years agoConvert DOS-style line endings to Unix-style.
David Griffith [Tue, 27 Mar 2018 17:46:02 +0000 (10:46 -0700)]
Convert DOS-style line endings to Unix-style.

7 years agoCleanup in Makefile.
David Griffith [Tue, 27 Mar 2018 17:44:04 +0000 (10:44 -0700)]
Cleanup in Makefile.

7 years agoGive the core its own Makefile.
David Griffith [Tue, 27 Mar 2018 17:42:14 +0000 (10:42 -0700)]
Give the core its own Makefile.

7 years agoGive the curses interface its own Makefile.
David Griffith [Tue, 27 Mar 2018 17:24:16 +0000 (10:24 -0700)]
Give the curses interface its own Makefile.

7 years agoFixed weird problems with "make clean" trying to compile stuff.
David Griffith [Tue, 27 Mar 2018 17:01:16 +0000 (10:01 -0700)]
Fixed weird problems with "make clean" trying to compile stuff.

7 years agoGive blorblib it's own Makefile.
David Griffith [Tue, 27 Mar 2018 15:44:06 +0000 (08:44 -0700)]
Give blorblib it's own Makefile.

7 years agoGive dfrotz its own Makefile. Need to figure out how to not link to libpthread.
David Griffith [Tue, 27 Mar 2018 15:19:34 +0000 (08:19 -0700)]
Give dfrotz its own Makefile.  Need to figure out how to not link to libpthread.

7 years agoMerge branch 'tkorvola-misc'
David Griffith [Tue, 27 Mar 2018 10:52:31 +0000 (03:52 -0700)]
Merge branch 'tkorvola-misc'

7 years agoChange sfrotz over to using common/defines.h for version and build date info.
David Griffith [Tue, 27 Mar 2018 10:51:08 +0000 (03:51 -0700)]
Change sfrotz over to using common/defines.h for version and build date info.

7 years agoMerge branch 'misc' of https://github.com/tkorvola/frotz into tkorvola-misc
David Griffith [Tue, 27 Mar 2018 10:21:29 +0000 (03:21 -0700)]
Merge branch 'misc' of https://github.com/tkorvola/frotz into tkorvola-misc

7 years agoMerge pull request #69 from escondida/quetzal
David Griffith [Tue, 27 Mar 2018 09:10:43 +0000 (02:10 -0700)]
Merge pull request #69 from escondida/quetzal

src/common/quetzal.c: Do not implicitly fall through in case statement

7 years agoFix cursor positioning.
Timo Korvola [Mon, 26 Mar 2018 23:44:50 +0000 (02:44 +0300)]
Fix cursor positioning.

Input text width was computed incorrectly.

7 years agoRemove the distclean target.
Timo Korvola [Sun, 25 Mar 2018 19:00:36 +0000 (22:00 +0300)]
Remove the distclean target.

The dependency files are now removed by clean.

Also fix bad package name.  It is just a default though: normally
SDL_PKGS comes from the top Makefile.

7 years agoReduce pointless recompilation.
Timo Korvola [Wed, 21 Mar 2018 19:50:40 +0000 (21:50 +0200)]
Reduce pointless recompilation.

Do not include common/defines.h unless actually needed.  It
contains nothing but version information.  It is updated at every
build to put in the current date.

7 years agoMiscellaneous portability fixes.
Timo Korvola [Tue, 20 Mar 2018 22:20:56 +0000 (00:20 +0200)]
Miscellaneous portability fixes.

7 years agoFix eternal loop in sf_GetProfileString.
Timo Korvola [Sun, 11 Mar 2018 20:25:46 +0000 (22:25 +0200)]
Fix eternal loop in sf_GetProfileString.

7 years agoMerge pull request #70 from escondida/end_no_strrchr
David Griffith [Thu, 22 Mar 2018 04:09:50 +0000 (21:09 -0700)]
Merge pull request #70 from escondida/end_no_strrchr

src/curses/ux_init.c: End homebrewed strrchr function
Whoops!

7 years agosrc/curses/ux_init.c: End homebrewed strrchr function
Ivy Foster [Wed, 21 Mar 2018 18:41:28 +0000 (13:41 -0500)]
src/curses/ux_init.c: End homebrewed strrchr function

At present, it is sort of ended by the #endif following it.

7 years agosrc/common/quetzal.c: Do not implicitly fall through in case statement
Ivy Foster [Wed, 21 Mar 2018 17:26:06 +0000 (12:26 -0500)]
src/common/quetzal.c: Do not implicitly fall through in case statement

7 years agoChange append redirection to create redirection to avoid garbage.
David Griffith [Sun, 11 Mar 2018 13:33:57 +0000 (06:33 -0700)]
Change append redirection to create redirection to avoid garbage.

7 years agoFix typo with GIT_BRANCH in Makefile.
David Griffith [Sun, 11 Mar 2018 13:29:50 +0000 (06:29 -0700)]
Fix typo with GIT_BRANCH in Makefile.

7 years agoAdd BUILD_DATE_TIME to src/common/defines.h.
David Griffith [Sun, 11 Mar 2018 13:27:12 +0000 (06:27 -0700)]
Add BUILD_DATE_TIME to src/common/defines.h.

7 years agoMerge branch 'tkorvola-sdl'
David Griffith [Sun, 11 Mar 2018 11:50:32 +0000 (04:50 -0700)]
Merge branch 'tkorvola-sdl'

7 years agoRemove duplicate -lz.
Timo Korvola [Sat, 10 Mar 2018 17:18:03 +0000 (19:18 +0200)]
Remove duplicate -lz.

7 years agoClean up compiler warnings.
Timo Korvola [Sat, 10 Mar 2018 17:10:22 +0000 (19:10 +0200)]
Clean up compiler warnings.

7 years agoMore useful CFLAGS.
Timo Korvola [Fri, 9 Mar 2018 21:51:09 +0000 (23:51 +0200)]
More useful CFLAGS.

Comment away -Wextra: it produces too many false positives for
regular use.  Aim for ISO C instead of GNU (still 99 vintage).
strdup is just too handy though: bring it in from POSIX 2008.
Curses sound uses pthreads, compile accordingly.

7 years agoFix some technical blunders.
Timo Korvola [Fri, 9 Mar 2018 21:43:49 +0000 (23:43 +0200)]
Fix some technical blunders.

Font height is not ascent + descent.  Ascent + descent = em size, but
height may be more if there is extra line spacing (height is from
baseline to baseline).  Also, off by one in yof computation.

7 years agoUpdate font_height & _width whenever they are used.
Timo Korvola [Fri, 9 Mar 2018 21:38:16 +0000 (23:38 +0200)]
Update font_height & _width whenever they are used.

Call os_data(0, &font_height, &font_width) to update.  On those
front ends where it does nothing (curses) it does not matter.

7 years agoSupport for querying current font size.
Timo Korvola [Fri, 9 Mar 2018 21:23:19 +0000 (23:23 +0200)]
Support for querying current font size.

os_font_data(0, &h, &w) stores the current font height and width
into h and w, also accounting for style (with a non-zero font
os_font_data returns dimensions for Roman style as before).
Currently properly implemented only in SDL where the call returns true.
On other front ends it returns false and either does not touch h & w
(curses) or sets them correctly anyway (dos).