s6145: Bundle libS6145ImageReProcess!

Yep, the s6145 is now fully usable with Free Software!
This commit is contained in:
Solomon Peachy 2016-01-27 08:00:02 -05:00
parent 69664f5076
commit 878946571f
3 changed files with 1862 additions and 15 deletions

46
README
View File

@ -381,21 +381,40 @@
*** VERY IMPORTANT ***
The Sinfonia CHC-S6145 printer (and its siblings) require the input
data to be transformed using a proprietary library in order to generate
usable output.
In order to generate usable output, the Sinfonia CHC-S6145 printer
(and its siblings) require the input data to be transformed using
specific image processing algorithms.
This library (libS6145ImageProcess) was provided to the authors of
selphy_print in binary form, without redistribution permissions. It was
also only made available for x86 and x86_64 platdorms.
The library that implements this processing is dynamically loaded
at runtime. There are three options:
Work is under way to reverse-engineer and re-implement this library.
the replacement is called libS6145ImageReProcess, and is not yet
publicly released.
* libS6145ImageProcess -- Supported by Sinfonia, this is a proprietary
library only available for x86 and x86_64 linux targets. It can be
obtained by politely contacting your local Sinfonia distributor.
The backend will automatically attempt to load one of these libraries
at runtime. If neither is available, it will default to a very crude
algorithm that generates poor results not suable for photographic output.
If you have the appropriate permission fron Sinfonia and its
technical and legal limitations are acceptible to you, we recommend
you use the supported libS6145ImageProcess library, as it will
generate the highest quality output.
* libS6145ImageReProcess -- GPL'd re-implementation of the Sinfonia
algorithms, available as source. It is a drop-in replacement
that appears to generate identical output to the proprietary
Sinfonia library.
DISCLAIMER: Sinfonia Inc was not involved in the creation of
libS6145ImageReProcess and is not responsible in any way for any
deficiencies in its output. They will provide no support if it is
used.
Do *NOT* contact Sinfonia for support if you are using
libS6146ImageReProcess.
(Please see the full disclaimer in libS6145ImageReProcess.c)
* If neither of the above libraries are found, the backend will
fall back to a very crude algorithm that generates low-quality
results not suitable for photographic output
As selphy_print is released under the terms of the GPL, it cannot
normally be combined with proprietary libraries.
@ -405,9 +424,6 @@
it with the libS6145ImageProcess library. For the full text of this
license exception, please see the header of backend_shinkos6145.c
If you own a S6145 printer, libS6145ImageProcess may be obtained by
politely contacting your local Sinfonia distributor.
Valid commands:
-c filename Query User tone curve from flash [1]

40
lib6145/Makefile Normal file
View File

@ -0,0 +1,40 @@
# Basic stuff
LIBS6145_NAME ?= S6145ImageReProcess
# Destination directories
DESTDIR ?=
LIBDIR ?= $(DESTDIR)/usr/local/lib
# Tools
CC ?= $(CROSS_COMPILE)gcc
CPPCHECK ?= cppcheck
MKDIR ?= mkdir
INSTALL ?= install
RM ?= rm
# Flags
CFLAGS += -Wall -Wextra -g -Os -std=c99 -fPIC --no-strict-overflow # -Wconversion
#LDFLAGS +=
#CPPFLAGS +=
# Build stuff
SOURCES = libS6145ImageReProcess.c
# And now the rules!
.PHONY: clean all install cppcheck
all: lib$(LIBS6145_NAME).so
cppcheck:
$(CPPCHECK) -q -v --std=c99 --enable=all -I/usr/include $(CPPFLAGS) $(SOURCES)
install:
$(INSTALL) -o root -m 755 lib$(LIBS6145_NAME).so $(LIBDIR)
clean:
$(RM) -f lib$(LIBS6145_NAME).so *.o
lib$(LIBS6145_NAME).so: $(SOURCES:.c=.o)
$(CC) $(LDFLAGS) -g -shared -o $@ $^
%.o: %.c
$(CC) -c $(CFLAGS) -o $@ $<

File diff suppressed because it is too large Load Diff