liskon_frotz.git
8 years agoAdded some commentary to the end of the build process.
David Griffith [Mon, 27 Feb 2017 05:13:34 +0000 (21:13 -0800)]
Added some commentary to the end of the build process.

8 years agoAdded preliminary support for Blorb loading for Dumb interface.
David Griffith [Mon, 27 Feb 2017 04:59:44 +0000 (20:59 -0800)]
Added preliminary support for Blorb loading for Dumb interface.

In the interest of keeping the dumb interface as simple as possible,
I want to make sure that Blorb support is optional.

8 years agoRemove more Blorb stuff from ux_frotz.h.
David Griffith [Mon, 27 Feb 2017 04:49:30 +0000 (20:49 -0800)]
Remove more Blorb stuff from ux_frotz.h.

8 years agoMove use_blorb and exec_in_blorb from u_setup_t to f_setup_t.
David Griffith [Mon, 27 Feb 2017 04:08:48 +0000 (20:08 -0800)]
Move use_blorb and exec_in_blorb from u_setup_t to f_setup_t.

8 years agoDelete useless Blorb members of u_setup_t structure.
David Griffith [Mon, 27 Feb 2017 04:00:34 +0000 (20:00 -0800)]
Delete useless Blorb members of u_setup_t structure.

8 years agoMove Blorb stuff out of ux_setup.h and into ux_blorb.h. Fix ux_audio.c to work with...
David Griffith [Mon, 27 Feb 2017 03:59:27 +0000 (19:59 -0800)]
Move Blorb stuff out of ux_setup.h and into ux_blorb.h.  Fix ux_audio.c to work with this.

8 years agoHead off another potential problem with dotless files when loading a Blorb file.
David Griffith [Wed, 22 Feb 2017 13:31:54 +0000 (05:31 -0800)]
Head off another potential problem with dotless files when loading a Blorb file.

8 years agoFix for Frotz tries too hard to read game files. #35.
David Griffith [Wed, 22 Feb 2017 13:30:01 +0000 (05:30 -0800)]
Fix for Frotz tries too hard to read game files.  #35.

8 years agoAdded GPL and FSF stuff to leading comments in src/dumb/
David Griffith [Wed, 22 Feb 2017 13:10:08 +0000 (05:10 -0800)]
Added GPL and FSF stuff to leading comments in src/dumb/

8 years agoAdd http://www.fsf.org/ to leading comments.
David Griffith [Wed, 22 Feb 2017 13:07:14 +0000 (05:07 -0800)]
Add http://www.fsf.org/ to leading comments.

8 years agoAdjust the look of dfrotz information.
David Griffith [Wed, 22 Feb 2017 12:47:14 +0000 (04:47 -0800)]
Adjust the look of dfrotz information.

8 years agoDelete useless old CVS version tags.
David Griffith [Wed, 22 Feb 2017 12:41:38 +0000 (04:41 -0800)]
Delete useless old CVS version tags.

8 years agoFix long option crap.
David Griffith [Wed, 22 Feb 2017 12:33:25 +0000 (04:33 -0800)]
Fix long option crap.

The zgetopt() function will throw an error if you attempt to use a long
option flag like --this.  So I'm including "-" in the third parameter to
zgetopt() to cause long option flags to be ignored.

8 years agoDUMB FROTZ: Fix syntax and version. Fix defines.h and git_hash.h. Fix long option...
David Griffith [Wed, 22 Feb 2017 12:24:59 +0000 (04:24 -0800)]
DUMB FROTZ: Fix syntax and version. Fix defines.h and git_hash.h. Fix long option crap.

The zgetopt() function will throw an error if you attempt to use a long
option flag like --this.  So I'm including "-" in the third parameter to
zgetopt() to cause long option flags to be ignored.

8 years agoUpdate and rearrange use syntax and version information.
David Griffith [Wed, 22 Feb 2017 11:42:51 +0000 (03:42 -0800)]
Update and rearrange use syntax and version information.

8 years agoAdd to manpages the -R option for loading a save on startup.
David Griffith [Wed, 22 Feb 2017 03:04:47 +0000 (19:04 -0800)]
Add to manpages the -R option for loading a save on startup.

8 years agoMake syntax guide a bit clearer for what's expected for -b and -f.
David Griffith [Wed, 22 Feb 2017 03:01:10 +0000 (19:01 -0800)]
Make syntax guide a bit clearer for what's expected for -b and -f.

8 years agoMerge remote-tracking branch 'origin/ao-curses'
David Griffith [Wed, 22 Feb 2017 02:53:40 +0000 (18:53 -0800)]
Merge remote-tracking branch 'origin/ao-curses'

Conflicts:
.gitignore
ChangeLog
Makefile
PORTING
README
doc/dfrotz.6
doc/frotz.6
src/common/fastmem.c
src/common/frotz.h
src/common/main.c
src/common/process.c
src/common/screen.c
src/curses/ux_audio_none.c
src/curses/ux_blorb.c
src/curses/ux_file.c
src/curses/ux_frotz.h
src/curses/ux_init.c
src/curses/ux_screen.c
src/curses/ux_text.c
src/dos/bcinit.c
src/dumb/dumb_init.c

8 years agoFix src/curses/defines.h trouble.
David Griffith [Tue, 21 Feb 2017 20:28:10 +0000 (12:28 -0800)]
Fix src/curses/defines.h trouble.

8 years agoMerge pull request #38 from fundamental/partial-audio-fix
David Griffith [Tue, 21 Feb 2017 20:35:30 +0000 (12:35 -0800)]
Merge pull request #38 from fundamental/partial-audio-fix

Partial audio fix

8 years agoFix Typo When bleep.nsamples < music.nsamples
fundamental [Tue, 21 Feb 2017 20:18:18 +0000 (15:18 -0500)]
Fix Typo When bleep.nsamples < music.nsamples

8 years agoRemove Debug Printfs Within Audio Engine
fundamental [Tue, 21 Feb 2017 15:37:20 +0000 (10:37 -0500)]
Remove Debug Printfs Within Audio Engine

8 years agoAdd Separate Buffers For Music/FX
fundamental [Tue, 21 Feb 2017 15:29:22 +0000 (10:29 -0500)]
Add Separate Buffers For Music/FX

This commit:
- Adds a second set of thread signaling semaphores
- Removes pthread_kill() to avoid one lock/unlock race
- Uses *equal length* samples from music/effect streams when mixing
- Temporarily adds a lot of debug prints

The threading logic for this code was rather poor prior to this commit.
As such, I make no claims to the correctness of the threading code
within this commit as the assumptions presented by the code previously
installed in the audio engine are not clearly stated.

The code as presented fixes some of the issues involved in mixing, however
effect + ogg music still seems to pose an issue and the reasons why are
unclear. A rewrite of the architecture of the audio engine is recommended.

8 years agoGet Project To Build With Makefile
fundamental [Tue, 21 Feb 2017 15:28:38 +0000 (10:28 -0500)]
Get Project To Build With Makefile

8 years agoFix .gitignore
David Griffith [Thu, 16 Feb 2017 09:56:55 +0000 (01:56 -0800)]
Fix .gitignore

8 years agodumb interface: add -R option to immediately load a saved game.
David Griffith [Thu, 16 Feb 2017 09:33:44 +0000 (01:33 -0800)]
dumb interface: add -R option to immediately load a saved game.

8 years agoActually use the new my_strdup() function.
David Griffith [Thu, 16 Feb 2017 08:17:38 +0000 (00:17 -0800)]
Actually use the new my_strdup() function.

8 years agoDelete src/common/git_hash.h when doing "make clean".
David Griffith [Thu, 16 Feb 2017 07:31:19 +0000 (23:31 -0800)]
Delete src/common/git_hash.h when doing "make clean".

8 years agoFix #31: Several struct f_setup variables were not being set up at all.
David Griffith [Thu, 16 Feb 2017 01:05:15 +0000 (17:05 -0800)]
Fix #31: Several struct f_setup variables were not being set up at all.

In the interest of making sure this still compiles and runs on super-old
machinery, I opted to use a local implementation of strdup() instead of
using what's in string.h.

Later I'll address the possibility of strrchr() not being available.

Code shamelessly ripped from http://stackoverflow.com/questions/37132549

8 years agoMention the need for libsamplerate.
David Griffith [Wed, 1 Feb 2017 03:58:00 +0000 (19:58 -0800)]
Mention the need for libsamplerate.

8 years agoFix #33: Increase TEXT_BUFFER_SIZE to 275.
David Griffith [Tue, 31 Jan 2017 03:32:21 +0000 (19:32 -0800)]
Fix #33: Increase TEXT_BUFFER_SIZE to 275.

Inform7 is capable of overflowing the text (output) buffer by cramming
it with a maximum of 263 bytes.  This was discovered by pushing the
limits of the Inform7 compiler.  Inform6 won't do this, even if it's
told to print text far exceeding 263 bytes.

This overflow situation is not a security problem because the VM catches
it and aborts.  I am unsure if it's a good idea to truncate the attempt
to overfill the buffer and continue.

8 years agoFix #34: Exit if screen is wider than 255 instead of giving width of zero.
David Griffith [Tue, 10 Jan 2017 12:45:21 +0000 (04:45 -0800)]
Fix #34: Exit if screen is wider than 255 instead of giving width of zero.

8 years agoPossible incorrect use of print_string() in os_reset_screen().
David Griffith [Tue, 10 Jan 2017 12:36:10 +0000 (04:36 -0800)]
Possible incorrect use of print_string() in os_reset_screen().

If print_string() and probably by extension print_char() are used before
the Z-machine is running, a few random garbage characters are printed
instead of the intended text.  I'm not clear why this happens.

8 years agoFixed a problem with segfault on attempting to load a nonexistant file.
David Griffith [Fri, 23 Sep 2016 09:27:15 +0000 (02:27 -0700)]
Fixed a problem with segfault on attempting to load a nonexistant file.

ux_blorb_init() needs to be revisited to make sure all common blorb
filename extensions are supported.

8 years agoMake Git hash, tag, and branch info available to Frotz.
David Griffith [Sun, 17 Jul 2016 06:25:07 +0000 (23:25 -0700)]
Make Git hash, tag, and branch info available to Frotz.

8 years agoAdd UNUSED() macro to ux_audio_none.c.
David Griffith [Wed, 15 Jun 2016 08:06:01 +0000 (01:06 -0700)]
Add UNUSED() macro to ux_audio_none.c.

8 years agoMerge pull request #30 from erikd/ao-curses
David Griffith [Sat, 11 Jun 2016 09:03:40 +0000 (02:03 -0700)]
Merge pull request #30 from erikd/ao-curses

Add two new locks

8 years agoAdd two new locks
Erik de Castro Lopo [Sat, 11 Jun 2016 07:57:06 +0000 (17:57 +1000)]
Add two new locks

8 years agoBetter way of keeping -Wall quiet.
David Griffith [Sat, 11 Jun 2016 06:16:13 +0000 (23:16 -0700)]
Better way of keeping -Wall quiet.

8 years agoMerge branch 'erikd-ao-curses' into ao-curses
David Griffith [Sat, 11 Jun 2016 04:06:28 +0000 (21:06 -0700)]
Merge branch 'erikd-ao-curses' into ao-curses

8 years agoMore compiler warning fixes using Martin Pool's UNUSED macro.
David Griffith [Sat, 11 Jun 2016 04:05:22 +0000 (21:05 -0700)]
More compiler warning fixes using Martin Pool's UNUSED macro.

8 years agoFix more compiler warnings
Erik de Castro Lopo [Sat, 11 Jun 2016 03:16:03 +0000 (13:16 +1000)]
Fix more compiler warnings

8 years agoMakefile: Separate out CFLAGS
Erik de Castro Lopo [Sat, 11 Jun 2016 02:14:04 +0000 (12:14 +1000)]
Makefile: Separate out CFLAGS

8 years agoCorrected most of -Wall's complaints.
David Griffith [Sat, 11 Jun 2016 01:57:16 +0000 (18:57 -0700)]
Corrected most of -Wall's complaints.

8 years agoMerge pull request #28 from erikd/master
David Griffith [Sat, 11 Jun 2016 00:46:17 +0000 (17:46 -0700)]
Merge pull request #28 from erikd/master

Makefile: Add minimal C compiler warning flags

8 years agoMakefile: Add minimal C compiler warning flags
Erik de Castro Lopo [Fri, 10 Jun 2016 23:49:50 +0000 (09:49 +1000)]
Makefile: Add minimal C compiler warning flags

9 years agoFix unlock of an already unlocked mutex.
David Griffith [Sun, 15 May 2016 06:58:50 +0000 (23:58 -0700)]
Fix unlock of an already unlocked mutex.

9 years agoMerge pull request #26 from escondida/master
David Griffith [Fri, 29 Apr 2016 00:13:27 +0000 (17:13 -0700)]
Merge pull request #26 from escondida/master

9 years agoRemove unused variable from os_process_arguments
Ivy Foster [Wed, 27 Apr 2016 03:26:01 +0000 (22:26 -0500)]
Remove unused variable from os_process_arguments

9 years agoPrint errors to stdout in curses interface
Ivy Foster [Wed, 27 Apr 2016 03:18:15 +0000 (22:18 -0500)]
Print errors to stdout in curses interface

9 years agoMerge ux_init_blorb into os_process_arguments
Ivy Foster [Wed, 27 Apr 2016 02:42:32 +0000 (21:42 -0500)]
Merge ux_init_blorb into os_process_arguments

gcc warned that ux_init_blorb, a non-void function, could finish without
returning a value. Looking at its use in os_process_arguments (its only
caller), it seemed simpler to simply shove it in there.

9 years agoMerge pull request #25 from escondida/master
David Griffith [Sat, 23 Apr 2016 03:37:24 +0000 (20:37 -0700)]
Merge pull request #25 from escondida/master

Optionally look for configuration in $XDG_CONFIG_HOME

9 years agoLeave the decision whether to strip the binary up to the user/packager
Ivy Foster [Sat, 23 Apr 2016 02:40:13 +0000 (21:40 -0500)]
Leave the decision whether to strip the binary up to the user/packager

9 years agoAllow installing to DESTDIR
Ivy Foster [Sat, 23 Apr 2016 02:36:33 +0000 (21:36 -0500)]
Allow installing to DESTDIR

It's pretty standard to allow builders to pass DESTDIR=/some/dir to make
in order to (a) build the program without modifying $PREFIX and (b) still
install somewhere other than $PREFIX. This makes packaging a lot easier.

9 years agoOptionally look for configuration in $XDG_CONFIG_HOME
Ivy Foster [Sat, 23 Apr 2016 01:32:36 +0000 (20:32 -0500)]
Optionally look for configuration in $XDG_CONFIG_HOME

Also check $HOME/.frotzrc, for backwards compatibility.
reference: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html

9 years agoMerge pull request #24 from unix-ninja/master
David Griffith [Mon, 25 Jan 2016 21:50:50 +0000 (13:50 -0800)]
Merge pull request #24 from unix-ninja/master

Add configurable ar and ranlib paths in Makefile

9 years agoAdd configurable ar and ranlib paths in Makefile
Unix-Ninja [Mon, 25 Jan 2016 16:58:20 +0000 (11:58 -0500)]
Add configurable ar and ranlib paths in Makefile

9 years agoMerge pull request #23 from superxkooda-feature/cmdrestore
David Griffith [Fri, 22 Jan 2016 04:01:10 +0000 (20:01 -0800)]
Merge pull request #23 from superxkooda-feature/cmdrestore

9 years agoCleanup of code for the new option to immediately load a saved game.
David Griffith [Fri, 22 Jan 2016 03:58:19 +0000 (19:58 -0800)]
Cleanup of code for the new option to immediately load a saved game.

9 years agoAdded the capability to load a save file as a command line argument. Now you don...
Michael Anghelone [Wed, 20 Jan 2016 03:01:32 +0000 (22:01 -0500)]
Added the capability to load a save file as a command line argument. Now you don't need to load the game and issue the restore command to load a file. Everything else still works as one would think.

I these changes are only going to effect the curses version for now. I do not have a proper enviroment setup to test out dos.

Example:
frotz file.zblorb -R save.qzl

9 years ago09485e3a caused subsequent bleeps to be distorted. Segfaults back again.
David Griffith [Fri, 16 Oct 2015 07:33:09 +0000 (00:33 -0700)]
09485e3a caused subsequent bleeps to be distorted.  Segfaults back again.

9 years agoCrap
David Griffith [Fri, 16 Oct 2015 06:06:54 +0000 (23:06 -0700)]
Crap

9 years agoMake -Wall and -Wextra happy
David Griffith [Fri, 16 Oct 2015 05:53:50 +0000 (22:53 -0700)]
Make -Wall and -Wextra happy

9 years agoNo more segfaults when playing an AIFF when an OGG is already playing.
David Griffith [Fri, 16 Oct 2015 05:00:25 +0000 (22:00 -0700)]
No more segfaults when playing an AIFF when an OGG is already playing.
Sound of any kind is distorted after this.

9 years agoUpdate and cruft-removal for the manpages.
David Griffith [Thu, 1 Oct 2015 08:01:04 +0000 (01:01 -0700)]
Update and cruft-removal for the manpages.

9 years agoUpdate and cruft-removal for the manpages.
David Griffith [Thu, 1 Oct 2015 08:00:29 +0000 (01:00 -0700)]
Update and cruft-removal for the manpages.

9 years agoNow OGGV playback works.
David Griffith [Thu, 17 Sep 2015 06:20:00 +0000 (23:20 -0700)]
Now OGGV playback works.

9 years agoRemove unnecessary memmmove() calls.
David Griffith [Wed, 16 Sep 2015 23:29:08 +0000 (16:29 -0700)]
Remove unnecessary memmmove() calls.

9 years agoMinor typos and an if-rearrangement.
David Griffith [Tue, 8 Sep 2015 18:22:08 +0000 (11:22 -0700)]
Minor typos and an if-rearrangement.

9 years agoRemoved unnecessary startup chatter.
David Griffith [Sun, 6 Sep 2015 00:10:33 +0000 (17:10 -0700)]
Removed unnecessary startup chatter.

9 years agoChange some exit() calls to simple returns.
David Griffith [Mon, 31 Aug 2015 00:48:40 +0000 (17:48 -0700)]
Change some exit() calls to simple returns.

9 years agoGoing back to calling libvorbisfile directly because libsndfile doesn't
David Griffith [Mon, 31 Aug 2015 00:44:01 +0000 (17:44 -0700)]
Going back to calling libvorbisfile directly because libsndfile doesn't
support reading OGGV embedded in other files.  OGGV playback sort of
works (slow and distorted).  Turning it off isn't exactly right.

9 years agoAdded a private implementation of strrchr(3) for systems that lack it.
David Griffith [Sun, 30 Aug 2015 22:43:15 +0000 (15:43 -0700)]
Added a private implementation of strrchr(3) for systems that lack it.

9 years agoMerge pull request #20 from fornwall/master
David Griffith [Sun, 30 Aug 2015 22:31:08 +0000 (15:31 -0700)]
Merge pull request #20 from fornwall/master

Replace rindex() with strrchr()

9 years agoReplace rindex() with strrchr()
Fredrik Fornwall [Sun, 30 Aug 2015 08:54:06 +0000 (10:54 +0200)]
Replace rindex() with strrchr()

This fixes compilation on Android, and should be a general
improvement since rindex() is deprecated.

9 years agoTrying using the playaiff code for OGGV. It should work, right? Nope. Why not?
David Griffith [Thu, 27 Aug 2015 07:16:28 +0000 (00:16 -0700)]
Trying using the playaiff code for OGGV.  It should work, right?  Nope.  Why not?

9 years agoAlternating MODs with AIFFs now work completely. Still no mixing yet.
David Griffith [Mon, 10 Aug 2015 08:39:21 +0000 (01:39 -0700)]
Alternating MODs with AIFFs now work completely.  Still no mixing yet.

9 years agoMods play correctly. No mixing yet.
David Griffith [Mon, 10 Aug 2015 03:31:03 +0000 (20:31 -0700)]
Mods play correctly.  No mixing yet.

9 years agoFix #19, minor nit of unused variables in the Makefile.
David Griffith [Sun, 9 Aug 2015 22:46:52 +0000 (15:46 -0700)]
Fix #19, minor nit of unused variables in the Makefile.

9 years agoTruncate trailing question mark for those Infocom games that expect it.
David Griffith [Sun, 9 Aug 2015 21:25:05 +0000 (14:25 -0700)]
Truncate trailing question mark for those Infocom games that expect it.
This is otherwise a divergence from the Z-Machine Standard.

9 years agoMove some function prototypes around and make static.
David Griffith [Sun, 26 Jul 2015 01:06:05 +0000 (18:06 -0700)]
Move some function prototypes around and make static.

9 years agoMerge pull request #17 from ramn/jump_wordwise
David Griffith [Sun, 26 Jul 2015 00:47:08 +0000 (17:47 -0700)]
Merge pull request #17 from ramn/jump_wordwise

Add key bindings for jumping wordwise

9 years agoMerge pull request #16 from ramn/ctrl_w_improvements
David Griffith [Sun, 26 Jul 2015 00:46:34 +0000 (17:46 -0700)]
Merge pull request #16 from ramn/ctrl_w_improvements

Ctrl w improvements

9 years agoFix Issue #15: dumb-frotz -m option falls thru to show object_movement debug
David Griffith [Sun, 26 Jul 2015 00:32:34 +0000 (17:32 -0700)]
Fix Issue #15: dumb-frotz -m option falls thru to show object_movement debug

9 years agoAdd key bindings for jumping wordwise
Simon Andersson [Fri, 24 Jul 2015 22:09:15 +0000 (00:09 +0200)]
Add key bindings for jumping wordwise

meta-f, meta-b, works as in emacs/readline

9 years agoImprove ctrl-w
Simon Andersson [Fri, 24 Jul 2015 21:24:50 +0000 (23:24 +0200)]
Improve ctrl-w

Stop at word boundry, leaving the trailing space, the way ctrl-w usually
works.

9 years agoIgnore ctags, tmp
Simon Andersson [Fri, 24 Jul 2015 21:13:22 +0000 (23:13 +0200)]
Ignore ctags, tmp

9 years agoMerge pull request #14 from ramn/ctrl_w
David Griffith [Wed, 22 Jul 2015 23:34:21 +0000 (16:34 -0700)]
Merge pull request #14 from ramn/ctrl_w

Make ctrl-w work in middle of line

9 years agoMake ctrl-w work in middle of line
Simon Andersson [Wed, 22 Jul 2015 22:27:10 +0000 (00:27 +0200)]
Make ctrl-w work in middle of line

9 years agoRestrict ctrl-w to last word
Simon Andersson [Wed, 22 Jul 2015 21:30:03 +0000 (23:30 +0200)]
Restrict ctrl-w to last word

Doesn't work in the middle of a line currently

9 years agoMerge pull request #12 from ramn/add_ctrl_w
David Griffith [Wed, 22 Jul 2015 20:41:40 +0000 (13:41 -0700)]
Merge pull request #12 from ramn/add_ctrl_w

Add binding ctrl-w - deletes prev word

9 years agoAdd binding ctrl-w - deletes prev word
Simon Andersson [Wed, 22 Jul 2015 20:25:09 +0000 (22:25 +0200)]
Add binding ctrl-w - deletes prev word

Common key binding in readline, vim

9 years agoMerge pull request #9 from ZoeB/master
David Griffith [Sat, 11 Jul 2015 10:49:57 +0000 (03:49 -0700)]
Merge pull request #9 from ZoeB/master

Declare argument type

9 years agoDeclare argument type
Zoë Blade [Fri, 10 Jul 2015 21:17:34 +0000 (21:17 +0000)]
Declare argument type

9 years agoREADME tweaks.
David Griffith [Tue, 30 Jun 2015 10:50:28 +0000 (03:50 -0700)]
README tweaks.

9 years agoTidying up here and there.
David Griffith [Tue, 30 Jun 2015 10:46:30 +0000 (03:46 -0700)]
Tidying up here and there.

9 years agoFirst stab at playing MODs with AIFFs. Plays slow and only once.
David Griffith [Mon, 22 Jun 2015 09:54:47 +0000 (02:54 -0700)]
First stab at playing MODs with AIFFs.  Plays slow and only once.

9 years agoIt seems that in Debian 7, -lpthread was automatically being used.
David Griffith [Mon, 22 Jun 2015 02:46:37 +0000 (19:46 -0700)]
It seems that in Debian 7, -lpthread was automatically being used.

9 years agoUpdate manpages and conf-big.
David Griffith [Mon, 22 Jun 2015 02:09:50 +0000 (19:09 -0700)]
Update manpages and conf-big.

10 years agoOSS sound tidying up and change request from FreeBSD ports.
David Griffith [Tue, 26 May 2015 19:08:18 +0000 (12:08 -0700)]
OSS sound tidying up and change request from FreeBSD ports.