----------------------------------------------------------------
			* French-KISS! *
----------------------------------------------------------------
* About

This software fkiss - French-KISS! is a sample implementation of
KISekae Set system (KISS) for X Window System.
KISS is a software for playing Paper-doll on any computers.
"Kisekae" means "changing clothes".

----------------------------------------------------------------
* Install

To make Makefile
 % ./configure

To make executable binary
 % make

And executable binary "fkiss" is created.

Move this executable binary to install directory you like.
Example
 # mv fkiss /usr/local/bin
 or
 # make install

"fkiss.man" is a manual source file.
Copy this file to manual directory you like.
Example
 # cp fkiss.man /usr/local/man/man1/fkiss.1
 or
 # make install.man

Copy rc file to your home directory.
 % cp fkissrc.smp ~/.fkissrc


That's all. Let's try!

----------------------------------------------------------------
* Trouble in make

If you cannot to make fkiss or modified something to make,
Please tell me that:
  French-KISS! version
  Hardware and Operating system    
  Error messages
  (Your changes)

----------------
Troube! Error in configure!

"configure" is a shell script file generated by GNU autoconf.
If error reported at "/bin/sh configure",
Check /bin/sh is really Bourne shell.
If you cannot to use Bourne shell (What's unix system!!),
Use bash - GNU Bourne-Again SHell.
For example, edit "configure" line 1
>#! /bin/sh
change to
>#! /usr/local/bin/bash

----------------
Trouble! Nothing opendir library!
>dir.o: Undefined symbol _opendir referenced from text segment
>dir.o: Undefined symbol _readdir referenced from text segment
>dir.o: Undefined symbol _closedir referenced from text segment

Change following lines in "headers.h"
>/* directory access routine */
to
>/* directory access routine */
>#define USE_BSD_DIRLIB 0

----------------
Trouble! Compile error in message.c

Add "-DUSE_VARARGS" or "-DUSE_STDARG" to CFLAGS in Makefile,
Try to re-compile.

----------------
Other troubles!

Try to use GNU product software tools
instead of vender producted make, cc, sed, awk etc.
Some problems will be cleared.
For compatibility and performance, I recommend to use GNU product softwares.

----------------------------------------------------------------
* Startup

At first, get KISS data files from WWW and/or FTP-site.

The Big KiSS page - http://otakuworld.com/kiss/

You can find some KISS datas
and many favorite links on my web site "Kissin Institute of Softwear".
Let's visit!

Kissin Institute of Softwear - http://www2s.biglobe.ne.jp/~yav/

For "First KISS" users, Look sample KISS data archive "frkismi4.lzh"
contained in this package.
I experiment some KISS sound/animation extensions in this.
But, these extensions are NOT KISS standards.
And sound files are not contained.

A lot of KISS data files (*.lzh) are packed with LHa archiver.
Install LHa archiver and extract a archive file.
And you find these files:
	many "*.cel" (pixel)
	some "*.kcf" (color)
	some "*.cnf" (configuration)
These files are extracted, Let's
 % fkiss
to enjoy kisekae!!

None argument is specified, fkiss read "*.cnf" in a current directory.

Another way to enjoy is more simple.
 % fkiss frkismi4.lzh
fkiss make a directory /tmp/fkiss(PID)
and execute lha to extract files to there.
And search "*.cnf" in it.

There are some explanations about command line options in a manual.
 % man fkiss
to read manual.

----------------------------------------------------------------
* Core dump!

If fkiss is stopeed core dump or X error,
Please tell me that:
  Hardware and Operating system    
  Error messages
and fkiss debug information output.
To save debug information file "fkisslog" do:
 $ fkiss -debug bugkiss.lzh 2> fkisslog
  or
 % fkiss -debug bugkiss.lzh >& fkisslog

----------------------------------------------------------------
* Sound

fkiss check /dev/audio device for playing sound.
If /dev/audio is exist, fkiss open it and write startup sound data.
This action makes critical damege to netaudio and some systems.
If you happen this trouble, execute fkiss with "-nosound" option.

On Linux or FreeBSD, fkiss use /dev/dsp instead of /dev/audio,
and use ioctl to setup DSP sampling rate etc. Look sound.c!

If you have more better sound player, Try "-sound 2" option.
"-sound 2" option is specified, fkiss execute "play soundfile"
command to play sound. 

Version 0.32 or later, fkiss use EsounD to play sound.

----------------------------------------------------------------
* Conform

fkiss is conforming to KISS/GS2 (KISS General Specification 2),
and conforming to KISS/GS3, 4 draft.

Maximum size of screen
	Maximum value of int.

Maximum number of objects
	MAXOBJ is defined in "fkiss.h". (<= Maximum value of short)

Maximum number of cells
	MAXCEL is defined in "fkiss.h". (<= Maximum value of short)

----------------------------------------------------------------
* Reference

kissgs.doc - KISS/GS (KISS General Specification) Manual
Document of KISS standard written in Japanese and English.

----------------------------------------------------------------
* fkiss Extensions

I use some extensions (sound, animation) in a sample "frkismi4.lzh".
These extensions are ONLY for checking technical problems yet.
Now we are reseaching:
  Which functions users need?
  What is smart, eazy, simple description style?
These problems are resolved, we'll define advanced KISS officially.
BUT, THAT'S FUNCTIONS AND DESCRIPTION STYLE WILL BE DIFFERENT FROM THIS!

----------------------------------------------------------------
* Magic

Add following lines at /etc/magic to identify KISS files.

--------8<--------8<--------8<--------
0	string		KiSS		KISS/GS
>4	byte		16		color
>>5	byte		x		%d bit
>>8	leshort		x		%d colors
>>10	leshort		x		%d groups
>4	byte		32		cell
>>5	byte		x		%d bit
>>8	leshort		x		%d x
>>10	leshort		x		%d
>>12	leshort		x		+%d
>>14	leshort		x		+%d
--------8<--------8<--------8<--------

----------------------------------------------------------------
* Changes

v0.31 -> v0.32 (Onpu)
automake is used to make Makefile.in.
EsounD is used to play sound.
Control-Button1 change cell mapping bug fix.

v0.30 -> v0.31
Effective area of true-colored cel calcuration bug fix.
cnf and doc menu select ButtonRelease trig.
unlimited timer channels.
unlimited number of colors specified in kcf file.

v0.29 -> v0.30
FKiSS2.1 is implemented.
MAXPATH is not used.
dir_ls recursive.
lha xfiqw -> lha xfqw (Extract with directory)
if colcnt equal to zero, spx[SPX_BG] pixel for background imggc
Object position adjust at all set position.
%x (x is any alphabet) started token is not treated as comment in comment line.
selcnf.c:
 sys/stat.h -> stat.h
sub.c:
 stlen -> strlen
 dos_filename2
sound.c:
 sound file binary mode fopen

v0.28 -> v0.29
Dirk Schenkewitz tell me fix value over-flow bug
and MAXTIMER expansion advices.
Someone teach me to open sound_device O_NONBLOCK on Linux.
Supprt True color cell.
gen_arcommand security hole fix

v0.27 -> v0.28
Clean temporary files and exit on signal detection.
Request WM_DELETE_WINDOW message for window manager.
Use uname library function.
Support automatic object position adjustment.

v0.26 -> v0.27
-noimage mode core dump bug fix.
Add document file suffix add or del option -suffix, -nosuffix.
kisseve.c: TOKEN_LEN_MAX deleted,
Now no limit for fkiss event extension token length.
Support environment variable substitution in comment string.
Add backslash escape character '\$' - dollar.
Trigger first set event.
Read options in "$HOME/.fkissrc".
RIFF-WAVE (*.wav) analyze bug fix.

v0.25 -> v0.26
Document file browse function prototype.
Press [Doc] menu or type 'd' key to browse document files.

v0.24 -> v0.25 (Ruri)
After change set, first drug ignore bug fix.
Type mismatch on SUN fix.
Set 0 not exist (litks04c.cnf) X error fix.
sound_play error report.

v0.23 -> v0.24
Sound routine sync bug fix.
Cel comment display function is supported.
windowsize viewport function is supported.
Support mouse button function assign changing.
Fix the BUG that sets no information in cnf is not displayed.

v0.22 -> v0.23 (Ellis)
Sound cache bug fix.
Support pseudo transparency mode.

v0.21 -> v0.22 (Rei)
Optimize map change set.
WKISS bug emulation -wkiss option.
Optimize redraw area at change mapping.
Support RIFF-WAVE (*.wav) pcm file.

v0.20 -> v0.21 (Ayanami)
C-Button1 unmap bugfix
Support varargs.h style variable argument function.
Report visual class

v0.19 -> v0.20
Support randomtimer quit event extensions.
Use sound cache buffer.
Sample data frkismi1.lzh updated.

v0.18 -> v0.19
Change message.c to support for FreeBSD.

v0.16 -> v0.18
C-Button1 unmap function add.
Use autoconf to make configure script.

v0.16
First public release.
Sample data frkismi.lzh contained with.

----------------------------------------------------------------
* BUGS (or homeworks for you and me)

% fkiss /


TrueColor or DirectColor visual class server is required to display
True-colored CEL data.

Transrucent image operation is emulated with dither stipple pattern.

Not correspond with Network Audio System.

".Xdefaults" settings are ignored.

Supported only $USER or ${USER} environment variable in comment string.
${USER:-you}, ${USER:=}, ${USER:?} nor ${USER:+} not complete.
For example, ${USER-$YOU} do not work.

----------------------------------------------------------------
* Special thanks

MIO.H <mio.h@bigfoot.com> - KISS original author
DE-TE- <ueno@sds.abk.nec.co.jp> - xkiss author
Clis Hayasaka <yuki@is.s.u-tokyo.ac.jp> - Kiss FAQ author
Cocoa <cocoa@is.s.u-tokyo.ac.jp> - xkiss++ author
Jonathan Couper <couper@metdp2.met.co.nz> - XCheckTypedEvent technical advice
Ken "Mian" Stone <sasami@blaze.net.au> - kissgs.doc English advice
Hannu Savolainen <hsavolai@cs.helsinki.fi> - Linux Sound Driver ulaw.h
YASU. <LDS02540@niftyserve.or.jp> - yasukis1.lzh Lovery Yohko-san :-)
WACHIGAI - fkiss sample data frkismi.lzh Deform. Kismi-chan
Yohko Teppozuka - Lovely cute voice ;-)
Masaki Saeki <HZN83424@biglobe.ne.jp> - NEC EWS4800 bug report
yosinari yabuki/ATO <yabuki@sendai.advantest.co.jp> - SunOS 5.4 bug report
Minoru Iwamoto <iwamo@nims.nec.co.jp> - NEC EWS4800 bug report
Naoyuki Shinbo <j2292106@ed.kagu.sut.ac.jp> - SunOS 4.1.3 bug report
RERE <PXK07402@niftyserve.or.jp> - Solaris 2.4 bug report
Takahiro Suzuki <takahiro@plasma.q.t.u-tokyo.ac.jp> - Browse document function
EMK <VYV03354@niftyserve.or.jp> - no image mode paint_gc bug fix
Takashi Oe <toe@unlinfo.unl.edu> - no image mode paint_gc bug fix
Shuichi OONO <jr5pdx@debian.or.jp> - Temporary file cleaning
yochi@debian.or.jp - use uname library
Dirk Schenkewitz - MAXTIMER, MAXEVENT patch (TELL ME E-MAIL ADDRESS!)
? - Sound device O_NONBLOCK open (TELL ME NAME AND E-MAIL ADDRESS!)
Eric Armstrong <eric_peter_armstrong@yahoo.com> - Illegal cnf bug fix

----------------------------------------------------------------
* Copying

fkiss is a public domain softwear.

If you do not disturb my original distribution,
Permission to use, copy, modify, distribute and sell this software
for any purpose is granted without fee.

If you have any advices, questions and BUG reports,
Please send E-mail to me.


yav             E-mail  yav@bigfoot.com
                WWW     http://www2s.biglobe.ne.jp/~yav/

