#! /usr/pkg/bin/magicfilter
#
# Magic filter setup file for 600 DPI LaserJet 4 series with PostScript
# (i.e. LJ 4MP, 4M, 4M+, 4MV or 4SiMX or 4P, 4, 4+, 4V or 4Si with PostScript
# option installed).
#
# This file has been automatically adapted to your system.
#

# PostScript
0 %! postscript
0 \004%! postscript

# TeX DVI
0 \367\002 ffilter /usr/pkg/bin/dvips -D 600 -R -q -F -f

# compress'd data
0 \037\235 pipe /usr/bin/gzip -cdq

# packed, gzipped, frozen and SCO LZH data
0 \037\036 pipe /usr/bin/gzip -cdq
0 \037\213 pipe /usr/bin/gzip -cdq
0 \037\236 pipe /usr/bin/gzip -cdq
0 \037\240 pipe /usr/bin/gzip -cdq

# troff documents
0 .\?\?\040 ffilter `/usr/bin/grog -Tlj4 $FILE`
0 .\\\" ffilter `/usr/bin/grog -Tlj4 $FILE`
0 '\\\" ffilter `/usr/bin/grog -Tlj4 $FILE`
0 '.\\\" ffilter `/usr/bin/grog -Tlj4 $FILE`
0 \\\" ffilter `/usr/bin/grog -Tlj4 $FILE`

# ditroff
0 "x T ps" filter /usr/bin/grops
0 "x T dvi" pipe /usr/bin/grodvi
0 "x T ascii" pipe /usr/bin/grotty
0 "x T latin1" pipe /usr/bin/grotty
0 "x T lj4" filter /usr/bin/grolj4

# Portable bit-, grey- and pixmaps
0 P1\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null
0 P2\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null
0 P3\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null
0 P4\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null
0 P5\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null
0 P6\n filter /usr/pkg/bin/pnmtops -scale 1000 -dpi 600 2>/dev/null

# HP Printer Control Language (PCL) -- assume start with reset code
0 \033E\033 cat

# HP Printer Job Language (PJL)
0 \033%-12345X cat
0 "@PJL " cat
0 @PJL\t cat
0 @PJL\r cat
0 @PJL\n cat

# GIF files
0 GIF87a pipe /usr/pkg/bin/giftopnm 2>/dev/null
0 GIF89a pipe /usr/pkg/bin/giftopnm 2>/dev/null

# JFIF (JPEG) files
0 \377\330\377\340\?\?JFIF\0 pipe /usr/pkg/bin/djpeg -pnm

# TIFF files (the last two bytes of the "magic" is really a version number;
# but the magic is really lame and as far as I have understood the version
# number has never changed and never will, so we include it.)
0 MM\0\x2a pipe /usr/pkg/bin/tifftopnm 2>/dev/null
0 II\x2a\0 pipe /usr/pkg/bin/tifftopnm 2>/dev/null

# BMP files (even lousier magic -- Microsoft strikes again!)
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x0c pipe \
 /usr/pkg/bin/bmptopnm 2>/dev/null
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x40 pipe \
 /usr/pkg/bin/bmptopnm 2>/dev/null
0 BM\?\?\?\?\?\?\?\?\?\?\?\?\x28 pipe \
 /usr/pkg/bin/bmptopnm 2>/dev/null

# Sun rasterfiles
0 \x59\xa6\x6a\x95 pipe /usr/pkg/bin/rasttopnm 2>/dev/null

# SGI Imagelib (IRIS RGB) files
0 \x1\xda pipe /usr/pkg/bin/sgitopnm 2>/dev/null
0 \xda\x1 pipe /usr/pkg/bin/sgitopnm 2>/dev/null

# FIG files; reported by Steven P. Hill <sph@uscbu.ih.att.com>
0 #FIG reject Cannot print FIG files on this printer.

#
# Standard rejects... things we don't want to print
#

# Various archive formats
257 ustar\0 reject Attempted to print a tar file.
257 "ustar \0" reject Attempted to print a tar file.
0 07070 reject Attempted to print a cpio file.
0 PK\3\4 reject Attempted to print a zip file.
20 \xdc\xa7\xc7\xfd reject Attempted to print a zoo file.

# Binaries (Linux): reject with email message
0 \013\1d\0 reject Attempted to print a compiled binary.
0 \100\1d\0 reject Attempted to print a compiled binary.
0 \007\1d\0 reject Attempted to print a compiled binary.
0 \314\0d\0 reject Attempted to print a compiled binary.
0 \177ELF reject Attempted to print an ELF object.
0 \007\001\0 reject Attempted to print an object file.
216 \021\001\0\0 reject Attempted to print a core dump file.
0 !<arch> reject Attempted to print an archive.
0 =<ar> reject Attempted to print an archive.

# Don't confuse this one with troff!
0 .snd reject Attempted to print Sun/NeXT audio data.

# optimistic troff magic
0 . ffilter `/usr/bin/grog -Tlj4 $FILE`
# wacko troff magic
0 ''' ffilter `/usr/bin/grog -Tlj4 $FILE`

# wild guess: PCL control codes start with <ESC>
0 \033 cat

# Default entry -- for normal (text) files. MUST BE LAST.
default cat \eE\e&k2G\e(0N \eE
