23NOV92
Laughing Dog Screen Maker READ.ME file:

 This file contains any miscellaneous last minute information 
 that did not make its way into the manual.
----------------------------------------------------------------------------

PRINTING THE DOCUMENTATION FILES:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    All of the Laughing Dog Screen Maker documentation files, having 
the extension .DOC, are ready for printing.  They are already formatted
using 1" margins and page breaks.
    To print a file, use either the DOS copy command:
                
            COPY LDOG.DOC LPT1

    or the DOS print spooler, which will allow you to run another
application, while the document is printed in the background:

            PRINT LDOG.DOC

    Each file is described in the file PACKING.LST.  Most files are just
a few pages long, with the exception of the Users Manual (LDOG.DOC), which
is about 100 pages in length.

---------------------------------------------------------------------------
Instant Registration of the Laughing Dog Screen Maker via CompuServe
---------------------------------------------------------------------------

As a convience to those of you that have CompuServe accounts, you may now
register the Laughing Dog Screen Maker instantly via CompuServe's Shareware
Registration Service.

>>>It is not necessary that you download LDOG from CompuServe to use this
   service. 
>>>Registration Fee will be billed to your CompuServe account.

Here is how you do it:
-- Just log on as usual, then at the ! prompt type "GO SWREG"
-- You will then see the Register Shareware Menu.
-- Choose "Register Shareware" or "Instructions to Register Shareware" for
   more information.
-- When you choose the "Register Shareware" option, you will be presented
   with another menu allowing you to scan the registration database and
   specify the program to register.

-- There are several options:               Search for:

      Registration ID                        344
      Title                                  Laughing Dog Screen Maker
      File Name                              LDOG.ZIP
      Author's User ID                       73650,104
      Author's Name                          Jeff Sloan
      Keywords                               Laughing or Dog or Screen

--When you have located the description of the Laughing Dog Screen Maker,
  just follow the directions to register it. The registration fee will be
  automatically billed to your CompuServe account, and Yardbird Software
  will be notified within 24 hours of your order, which will be shipped
  the same or next day!

---------------------------------------------------------------------------
New Features that did not make it into manual:
---------------------------------------------------------------------------

--Added ASCII Text output to the Generate Code/Export Menu.  To use it,
  select the ASCII Text File option from the Generate Code/Export menu.
  You will be presented with another menu which allows you to choose the
  line termination method (Carriage Return and Line Feed, or Carriage
  Return Only) and change the Last Screen Row included in the file from
  the default (whole screen). You then select the "Write Text File" option
  to save the file. You will be presented with the standard Save File dialog
  box to enter a filename. ASCII Text files are saved with the extension:
  "TXT"
  NOTE: The following characters are filtered out, as they will not print
  out correctly in a text file:

  (Hexadecimal values): $07, $08, $09, $0A, $1A, & $1B.

  These values will be replaced with spaces ($20).


--Added the ability to automatically insert WildCat! and PCBoard @variables
  into a screen.  These are only of use to you if you are intending to export
  the screen as a PCBoard or WildCat! BBS file.  To insert an @variable:
  place the cursor at the position where you would like to insert the
  @variable string.  Press the hot key: <cntl>-V.  You will be presented
  with a menu allowing you to specify which BBS software you are using
  (PCBoard or WildCat!). This setting only needs to be specified the
  first time you enter an @variable during the current LDOG session, it will
  be set as the default for any subsequent insertions.  You may also set
  the method of coloring the string from this menu (this setting will also
  be remembered for subsequent insertions).  The two choices are: 1. Use the
  current color, that is, the color selected via the color attribute
  selection box. or 2. Use the color at the cursor position.  Choose the
  method you prefer.  NOTE: It is very important that the entire @variable
  string be of the same color because if it is not, a color change @code will
  be inserted into the middle of the @variable string when written to a file
  causing the @variable to become corrupted.  Some @variables contain "fill"
  characters that are to be filled in by you.  The filler character used is
  the pound sign "#"  Replace the #'s with the appropriate numbers, USING THE
  SAME COLOR AS THE REST OF THE @VARIABLE STRING!

--Also note that the last row of screens exported as WildCat! or PCBoard
  BBS screens is truncated.  This will allow the screens to be displayed
  correctly when the background is a color other than black.

---------------------------------------------------------------------------
Changes Made in the Manual
---------------------------------------------------------------------------
--The PostScript output now contains a feature which allows you to easily
  specify the number of printouts to produce from a single file. The line:
       /#copies 1 def
  tells the printer how many copies of the upcomming page to print.  Change
  the "1" to any other positive integer to print multiple copies.

--The color Pascal code and mono Assembler source code produced by the 
  Laughing Dog has been changed. The listings in the manual are no longer
  correct. They should read:

==============
 Pascal Code:
==============
{ C:\LDOG\TEST.PAS -- Laughing Dog Screen Maker Pascal-Code file}
{ Created: 9/25/92 }

PROGRAM test;
uses Crt, Dos;

VAR
	ch : char;
	Xpos : byte;
	Ypos : byte;
	ScnIndx : integer;
	Regs : Registers;

CONST
	ScnRows=25;
	ScnCols=80;

	test_SCREEN : ARRAY [1..4000] OF byte = (
		131, 196, 131, 196, 131, 196, 131, 196, 131, 196, 131,
...etc....
		126, 219, 126, 219, 126, 219, 126, 219, 126, 219, 126,
		126, 219, 126, 219, 126, 219, 126, 64, 126, 66, 126);

BEGIN
	{Set-Up Vars}
	ScnIndx := 1;
	Xpos := 0;
	Ypos := 0;

	{Main Loop}
	repeat

		{Position cursor--> Interupt: $10, Function: $2}
		Regs.AH := 2; {Func 2}
		Regs.BH := 0; {Video Page 0}
		Regs.DH := Ypos;
		Regs.DL := Xpos;
		Intr($10,Regs);

		{Write Char/Attr to Screen--> Interrupt: $10, Function $9}
		Regs.AH := 9; {func 9}
		Regs.AL := test_SCREEN[ScnIndx]; {char}
		Regs.BH := 0; {video page 0}
		ScnIndx := ScnIndx + 1;
		Regs.BL := test_SCREEN[ScnIndx]; {attr}
		Regs.CX := 1; {# chars}
		Intr($10,Regs);

		{Point to Next Screen Pos & Char/Attr}
		ScnIndx := ScnIndx + 1;
		Xpos := Xpos + 1;
		if Xpos = ScnCols then {end of row?}
		begin {yes, wrap}
			Xpos := 0;
			Ypos := Ypos + 1;
		end
	until Ypos = ScnRows;
	read(ch); {wait for a keystroke}
	ClrScr; {clear the screen}
END.

======================
 Mono Assembler Code:
======================
; C:\LDOG\TEST.ASM 
; -- Laughing Dog Screen Maker MASM Assembly-Code file
; Created: 9/25/92


TEST_LENGTH	EQU	2000
	.MODEL	small

	.STACK	100h		;256 byte stack

	.DATA

TEST_SCREEN LABEL WORD

	DB	"This is the first line in the screen.....                  "
...etc...
	DB	"and, this is the last line in the screen...                "

	.CODE
;STARTUP CODE (Set up DS, SS and SP Regs)
dogstart:
	mov	dx,@data
	mov	ds,dx
	mov	bx,ss
	sub	bx,dx
	shl	bx,1
	shl	bx,1
	shl	bx,1
	shl	bx,1
	cli
	mov	ss,dx
	add	sp,bx
	sti
;Actual program begins here
	push	es		;save es register
	mov	ah,0fh		;get current video mode
	int	010h
	cmp	al,7		;is it a monochrome mode?
	jz	mono		;yes
	mov	ax,0B800h	;color text video segment
	jmp	SHORT setup
mono:
	mov	ax,0B000h	;monochrome text video segment
setup:
	mov	es,ax		;point to video memory
	sub	di,di		;zero indices
	sub	si,si
doit:
	mov	al,[offset TEST_SCREEN+si] ;get ch
	mov	ah,7		;attr to use
	mov	es:[di],ax	;write to video memory
	add	di,2		;point to next pos in video memory
	inc	si		;point to next ch in array
	cmp	si,TEST_LENGTH ;at end of screen?
	jnz	doit		;no, keep going

	mov	ah,02h		;all done, hide cursor
	mov	bh,0		;assume video page 0
	mov	dx,1A00h	;moves cursor past bottom of screen
	int	010h

;wait for a keystroke
lup:
	mov	ah,1		;function 1 (read kbd status)
	int	016h		;interrupt 16h
	jz	lup
	mov	ah,0		;clear kbd buffer
	int	016h

;Clear the screen
	mov	ah,6		;function 6 (scroll window up)
	mov	al,0		;blank screen
	mov	bh,7		;use mono attribute
	mov	ch,0		;starting row
	mov	cl,0		;starting column
	mov	dh,25		;ending row
	mov	dl,80		;ending column
	int	10h		;call interrupt 10h

	mov	ah,02h		;puts cursor back where it belongs
	mov	bh,0		;assume video page 0
	mov	dx,0
	int	010h

;DOS exit function w/exitcode = 0
	mov	ax,4c00h
	int	21h

	END dogstart

==================
End source code
==================

---------------------------------------------------------------------------
Command Line Switch added to LDOGSHOW.EXE
---------------------------------------------------------------------------
There is a new command line option (switch) which has been added which may
be useful. It is:
	/X         exit program with screen intact (don't clear screen)

If a single screen is being displayed, LDOGSHOW will simply terminate,
leaving the screen displayed. It will not require a keystroke, and it will
not clear the screen.
If multiple screens are being displayed via the /L listfile.ext option,
the list will not continually loop, but will instead simply end upon
displaying the last screen in the list. It will not wait for a keystroke
after the last screen, and it will not clear the screen.

---------------------------------------------------------------------------
BONUS PostScript UTILITY ADDED AT LAST MINUTE!
---------------------------------------------------------------------------
The file BLK2EPS.EXE is a utility program which will convert a block file
into an EPS (PostScript) file.  The resulting file may be imported into
other programs accepting EPS files just like the full screen EPS files
produced by the Laughing Dog Screen Maker.

USAGE:
    BLK2EPS infile.PUP outfile.ext NeedFont?

    Where infile.PUP is the full filename of the block file to convert,
    outfile.ext is the full filename of the resulting EPS file (recommend
    using the EPS extension), and NeedFont? is the digit 0 or 1 (1=include
    font information in EPS file, 0=DO NOT include font).

EXAMPLE:
    BLK2EPS BLOCK1.PUP BLOCK1.EPS 1

    This example will take the file "BLOCK1.PUP" in the current directory
    and convert it to an EPS file including the font, and save the new
    file as "BLOCK1.EPS" in the current directory.

NOTE: You may also convert a full screen xxxxxxxx.DOG file to EPS using this
      utility.

-----------------------------------------------------------------------------
 Mind Boggling Example of what can be done with the IBM extended chars!
-----------------------------------------------------------------------------
    Check out this file: MAGIC.DOG
    I found it originally as ANSI art on a local BBS, and I haven't been
the same since.  I didn't know such things were possible!  This is just an
example of the fantastic images you can create using the Laughing Dog Screen
Maker (NOTE: MAGIC.DOG was not created with LDOG, it was captured from the 
original ANSI using LDOGRAB.EXE)

-----------------------------------------------------------------------------
 Attention BBS SYSOPS! -- New program for Wildcat! or PCBoard BBS Sysops
                          from Yardbird Software.
-----------------------------------------------------------------------------
>>  WCView -- Wildcat! BBS screen @code screen file viewer.  This program
              allows you to view @code screens with any embedded @variable
              codes like @USER@, @CITY@, etc. automatically replaced by
              text which you can specify.  View individual or multiple
              screens. Toggle between color and monochrome views of your
              screens. Change replacement text by simply editing a text file.
              Program reacts to your input keystrokes and embedded screen
              control codes like @PAUSE@, etc. EXACTLY as the BBS software
              does!  You can now preview screens offline.  A great companion
              program to The Laughing Dog Screen Maker!

>>  PCBView -- Same as WCView for PCBoard BBS @code screens.

  Look for:    WCVIEW.ZIP or PCBVIEW.ZIP on your local BBS, CompuServe, or
               GEnie (in the BBS forum/roundtable software libraries).

  Keywords:    WILDCAT WCVIEW PCBOARD PCBVIEW BBS SCREEN @CODE

  If you can't find on a BBS, send $10 + $3(s&h) [California residents add 
  $0.83 to cover sales tax] check, cash, or money order direct to:
     Yardbird Software
     PO Box 4646
     West Hills CA 91308

 --sorry, at this low price, we can't send out evaluation copies for free,
   but would be glad to send one if you send us $5 to cover disk, shiping,
   and handling.
