home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / scrimag2.zip / SCRIMAGE.DOC < prev    next >
Text File  |  1988-04-21  |  18KB  |  425 lines

  1. 4/21/88  SCRIMAGE (screen image)  -- a screen generator for dBASE or whatnot
  2. Copyright (C) R. Russell Freeland/Synergy Corp. 1987 1988
  3.  
  4. ****************************************************************************
  5.  
  6. This is not public domain software.  I retain all rights to the program.
  7. You may use it (this version) freely with no fee attached for as long as you
  8. wish.  You may not sell it.  Otherwise, feel free; enjoy.
  9.  
  10. *****************************************************************************
  11.  
  12. Disclaimer:
  13.  
  14. All standard stuff here.  SCRIMAGE does not, to the best of my knowledge,
  15. format disks or trash FAT tables, or any other nasty stuff.  However, neither
  16. Synergy nor I will be liable for any of your problems, whether or not they
  17. are SCRIMAGE-related.  RF
  18.  
  19. This is a program I am writing to get used to programming in C.  It started
  20. out to be a litebar menu generator, then while I was trying to conceptualize
  21. the way it should work I got sidetracked into stealing a lot of other people's
  22. concepts (and modifying them), which is always easier.  SCRIMAGE is rough
  23. in many places at this point.
  24.  
  25. History:
  26. ________
  27.  
  28. I started this thing in October, 1987.  I work on it in my "spare time" (read
  29. after midnight).  About a thousand versions have been tested by my most
  30. masochistic friends (thank you, guys).  However, I decided to let *you*, the
  31. non-friend type user, beat it to death in Beta for me [grin].
  32.  
  33. Beta 1 was released 12/30/87 as shareware.  It was a little cruder, and
  34. possibly not as buggy (remains to be seen [grin]).
  35.  
  36. Truth is, I think this version is almost good enough to be marketed actively--
  37. however, I don't have the bucks to market it yet [grin].
  38.  
  39. Design goals:
  40. _____________
  41.  
  42. This thing is supposed to stay small--originally I used tiny model but I got
  43. to like the idea of a lotta data space.  It's compact model Turbo C at this
  44. point.  I very much doubt that it will be OS/2-compatible at any time in the
  45. future, as I am using a lotta ill-behaved techniques and am too lazy to
  46. learn better.  SCRIMAGE now takes up about 140k in RAM--this may grow a bit,
  47. but a future version will probably allow you to configure it for how much
  48. screen space to reserve.
  49.  
  50. Limits:
  51. _________________
  52.  
  53. You cannot have more than 80 boxes on the screen, less than 60 of which
  54. are fields.  That seems reasonable to me.  You cannot have more than 16K or so
  55. of boxes including the screen background ("box 0").  One full screen in 80x25
  56. mode takes 4000 bytes (80x20x(2=1 for attribute, 1 for text).
  57.  
  58. Here's the beeph:
  59. _________________
  60.  
  61. PAY ATTENTION TO THE GRAYPLUS/GRAYMINUS STUFF!  IF YOU'RE NOT A FRAMEWORK
  62. USER, IT WILL BE STRANGE AT FIRST--YOU CANNOT ENTER TEXT INTO A BOX UNLESS
  63. YOU "ENTER" IT FIRST WITH GREYPLUS!
  64.  
  65. o ESC exits program.
  66.  
  67. o F10 pulls down menus--some of the features aren't on the menus yet (notably
  68.       block operations).
  69.  
  70. o F1 gets ya help--limited right now, but OK for a quick reference I think.
  71.  
  72. o CTRLP brings up the "fields menu", to bring fields onto the screen from
  73.   a dBASE DBF file.  Be careful--if the field doesn't fit in the box you're
  74.   in, it will float down to the box below (probably will fix this is next
  75.   version).
  76.  
  77. o AltB draws boxes -- ala UI, only draws down and right at present.  Five
  78.   flavors right now.  Cursor keys that work are rightarrow, leftarrow,
  79.   home, end, pageup, pagedown.
  80.  
  81. o F3 drags (moves) boxes (return ends).  Crtl-Pgup/CtrlPgdn move boxes 
  82.   under/above other boxes.  CtrlC centers.  Home, End, PgUp, PgDn work as they 
  83.   do with cursor movement in general.
  84.  
  85. o F8 copies a box (then drag, return ends).
  86.  
  87. o F4 resizes the box (return ends).  Text will be preserved if you contract,
  88.   then expand a box before hitting return.  Cursor keys are the same as with
  89.   ALTB (new box).
  90.  
  91. o ALTC colors the box under the cursor.  If the cursor is on a box
  92.   border, you will only change the border color.  If not on a border, you 
  93.   change both the contents and border *unless* they're different already.
  94.  
  95. o ALTD deletes the box under the cursor.
  96.  
  97. o GRAYPLUS selects a box for text entry.  If the status box is showing (top
  98.   right corner), the number of the box you have selected will be the leftmost
  99.   number in the box.  The screen background is box 0.
  100.  
  101. o GRAYMINUS deselects a box for text entry.
  102.  
  103. o ALTS should (?) suppress snow.
  104.  
  105. o F2 brings up the file save menu--options are:
  106.         - flat screen image (like LITEBAR and POPIT use);
  107.         - text (ASCII) file;
  108.         - Dbcode (PRG);
  109.         - INFO file for later reloading;
  110.         - FOX MEM file;
  111.         - IDL (see below);
  112.         - ANSI.
  113.   If you choose FOX MEM file, the file will contain one memvar whose name is
  114.   the same as that of the file--so if you saved TEST.MEM, you can enter
  115.   Foxplus and:
  116.   REST FROM TEST
  117.   REST SCRE FROM TEST.
  118.   This will get more sophisticated eventually.
  119.  
  120. o ALTG gets a previously saved file in INFO, flat screen image, text, or Fox
  121.   MEM file format.
  122.  
  123. o ALTP toggles "paint" mode.  Have a ball.
  124.  
  125. o ALTU toggles "undertype" mode--makes it possible to write or draw lines under 
  126.   a box (youch!).
  127.  
  128. o ALTX = DOS Access.  As usual, type EXIT to return.
  129.  
  130. o CTRLS toggles line drawing--a little rough still.
  131.   "S" will be displayed in the status box while this feature is in effect.
  132.  
  133. o CTRLD toggles double line drawing--same story.
  134.   "D" will be displayed in the status box while this feature is in effect.
  135.  
  136. o ALTA (changed from first Beta release) toggles "autojoin" in line drawing.
  137.   Etchasketch.  Still a little buggy.
  138.  
  139. o CTRLB draws blanks.  Instant eraser.  Just like CTRLS and
  140.   CTRLD, the line drawing keys, it's cancelled by both of those and CTRLQ.
  141.   "B" will be displayed in the status box while this feature is in effect.
  142.  
  143. o CTRLA draws "any character", you pick.
  144.  
  145. o CTRLQ quits either line-drawing mode or blank-drawing mode (also "painting").
  146.  
  147. o ALTJ joins all lines on screen (dBASE code will not reflect this yet, but
  148.   "flat screen images" (S)crimage option) or Memvar files will.  Still rough,
  149.   may take a few times in a row.
  150.  
  151. o CTRLJ joins just the lines at the cursor.
  152.  
  153. o F5 toggles display at top right -- BTW, the first number tells you which
  154.   box is "selected" (counting up from the screen itself, which is zero). The
  155.   other two numbers are the current row and column.
  156.  
  157. o F6 marks a block.  Try this one, it's more versatile (and dangerous [grin])
  158.   than some--you mark the block with arrow keys, then hit F8 for copy,ALTC
  159.   for color, F3 for move, or CTRLB for blank.  If you hit F8,
  160.   you then copy as in "copy box".  F3 drags the block, erases the original
  161.   if you terminate the drag with RETURN, or the copy if you terminate with ESC.
  162.   Unless you are in "flat" mode (see below) no box borders will be overwritten
  163.   or erased (although "color" will color borders).
  164.   When you hit ESCAPE, it aborts the copy/drag or markblock operation.
  165.   Hitting RETURN copies/drags the block, and then you're back to the markblock
  166.   operation as before--you can hit ESCAPE or change the block size, copy, etc.
  167.   When copying or moving a box, if in "flat"
  168.  
  169.   I might add that F6/F8 with an optional CTRLB and a little perversity makes
  170.   some nice Picasso-style stuff [grin].
  171.  
  172. o ALTF DANGEROUS FEATURE!! Make the screen "flat"...that is, make all
  173.   boxes accessible for trashing at any time!  The status box in the upper
  174.   right corner (if shown) will show an "F" instead of the box number.  This is
  175.   a toggle switch, hit it again to reverse.  For now, unfortunately, you must
  176.   flip out of "flat" mode to import INFO files and I don't
  177.   know what else.  Also, in "flat" mode there are differences in actions of
  178.   markblock options--copy, move, and blank will not erase or overwrite box 
  179.   borders *unless* you are in "flat" mode.  In flat mode, colors will be
  180.   preserved in block drag/copy operations, otherwise they will not.
  181.   If you move boxes around   visually with insert on in "flat" mode, their 
  182.   internal locations will not change!  BTW, if your dBASE code is not coming
  183.   out right, try turning "flat" on and regenerating it.
  184.  
  185. o F1 displays help screen.
  186.  
  187. o ALTE toggles 25/43 line mode on EGA (50 lines on VGA).  Pallette is not
  188.   preserved (yet).
  189.  
  190. o ALTO "overlays" an INFO file on the current setup.
  191.  
  192. o ALTF3 allows you to drag all boxes (if not in "flat" mode).
  193.  
  194. o F9 (ZOOM) key only works when the cursor is on a FIELD! (now, anyway)
  195.   -- it lets you change the field info.
  196.  
  197. o ALTL "leaks the text/fields from below.
  198.  
  199. o ALTU "unboxes" a box, leaves the text and the fields float down to the
  200.   first box where they'll fit.
  201.  
  202. These key combinations may (and will) be changed somewhat.  Be careful what
  203. you load, if you load a screen image (scrimage [grin]) as a SCRIMAGE INFO
  204. file, you'll probably crash, there is no error checking on this stuff yet.
  205.  
  206. File types:
  207. ___________
  208. o DBCODE save type (.PRG) makes a dBASE III Plus program file.  If you
  209.   have joined lines, etc. at box junctions this won't work right unless you
  210.   use go into "flat" mode to generate (which makes slower-performing code).
  211.  
  212. o SCREEN IMAGE file type (.IMG) makes a flat screen image.  Pop with POPIT.COM,
  213.   LITEBAR.BIN, SAVER.BIN, etc.
  214.  
  215. o INFO (.INF) file is SCRIMAGE's own format for saving all info so you can
  216.   reload later and regenerate other kindsa files (or just play).
  217.  
  218. o MEM (.MEM) files are for FOXbase+ screen variables.  SCRIMAGE only loads from
  219.   a MEM file that has a screen variable as the first (or only) memvar.  When
  220.   you write a MEM file, it contains one memvar which has the same name as the
  221.   file.  Avoid characters that are not alpha, fox will RESTORE FROM the file
  222.   but refuse to RESTORE SCREEN FROM the memvar.
  223.  
  224. o TEXT (.TXT) files have a text (no color) picture of the screen.
  225.  
  226. o ANSI files have ANSI color codes embedded--nice for BBS screens, or you
  227.   can TYPE 'em with ANSI.SYS installed.
  228.  
  229. o IDL files are like flat screen images with a ten-byte header--this is for use
  230.   with the Integrated Development Library for Clipper.  If you are a Clipper
  231.   user, IDL is excellent, a library of functions for Clipper written entirely
  232.   in ASM.  Call 603-382-1313 for details.  This feature will be expanded for
  233.   partial screens RSN.  In the meantime, you can only (probably) load IDL
  234.   files that you saved with SCRIMAGE.
  235.  
  236. Possible future features:
  237. _________________________
  238.  
  239. o color defaults                                             soon
  240.  
  241. o More versatile file naming (default directories too)       soon
  242.  
  243. o Sophisticated code generation (ala UI,Viewgen)             maybe, not soon
  244.  
  245. o Better dBASE code (covering weird joining characters,etc.) soon?
  246.  
  247. o dBASE IV Litebar menu generation                           by first "release"
  248.                                                              version
  249.  
  250. o dBASE Pulldown menu generation                               "     "
  251.  
  252. o Context-specific help prompts                              soon
  253.  
  254. o Better help in general                                     soon
  255.  
  256. o Import/export from/to other screen-generation programs     soon
  257.  
  258. o "Snapshot" TSR program                                     yeh, but don't hold
  259.                                                              yer breath, there
  260.                                                              are already a bunch
  261.                                                              around
  262.  
  263. o Ability to "pop" screen images from dBASE                  already happenin',
  264.                                                              lotsa PD stuff
  265.  
  266. o Windowing stuff                                            First release
  267.                                                              version
  268.  
  269. o "dBASE IV" compatibility                                   a must--first
  270.                                                              release
  271.  
  272. o Switch from one monitor to another                         definitely
  273.  
  274. o BYOB -- build your own box types                           pretty soon
  275.  
  276. o Configurable action keys (or macros)                       yep
  277.  
  278. o Clipper screen memvar files                                you bet
  279.  
  280. o Defaults for file locations/names, colors, etc.            yes
  281.  
  282. o "Switch active monitors" option                            soon
  283.  
  284. o ability to create a DBF from what's on the screen          yep
  285.  
  286. o fill in your own, there will probably be a lot more
  287.  
  288. Navigating the pulldowns:
  289. -------------------------
  290.  
  291. On a picklist-style pulldown list, you can type the name of the file/field
  292. and SCRIMAGE will follow--HOME goes to the top, END to the end, PAGEUP/DOWN
  293. go first to the top/bottom entry on this "page", then display previous/next
  294. pages.
  295.  
  296. Known bugs:
  297. -----------
  298.  
  299. If you choose (monitor switch) without a two-monitor system, SCRIMAGE doesn't
  300. check.  You can get your screen back with F10/enter, which will switch back
  301. (hopefully).
  302.  
  303. ALTL doesn't work with 1-line "blank" (noborder) boxes.
  304.  
  305. FLAT mode is buggy in general.
  306.  
  307. EGA(/VGA) lines is incompletely implemented.
  308.  
  309. SCRIMAGE may think MCGA is VGA, may cause problems but I haven't checked yet.
  310.  
  311.  
  312. Marketing plans:
  313. ________________
  314.  
  315. Anyone who sends me $60 by July 1, 1988 gets registration on my BBS and free
  316. downloads of updates to SCRIMAGE and doc (there will be many).  No disks or
  317. doc will be mailed until the RELEASE version, which will be after August 1.
  318. Meanwhile, you get to call my great private BBS [groan], which is usually
  319. sorely neglected except for my current projects, which are likely to
  320. include SCRIMAGE and takeoffs for awhile.  The reasons for this pre-release
  321. are several: I want to see what suggestions come in (and general reactions),
  322. I think this is one of the best shareware screen generators you'll find
  323. already (I'm prejudiced) so I figure people may get some use from it
  324. as is, and I need to get at least *some* money in to support further
  325. development.  The more money, the more I can hop on it--believe me, this is
  326. what I *like* to do!
  327.  
  328. Since I really am fond of this baby, I anticipate adding a bunch of features, 
  329. so I think registration may be a good idea at this point--
  330. I'll probably charge a tad more when I release this thing.  Also, if you're the
  331. type who enjoys making bizarre demands of an author during the development
  332. cycle, this deal is for you.  Or if you just have a lot of money and like the
  333. idea of supporting the development of demented programs, this is definitely the
  334. deal for you!
  335.  
  336. By the way, I may release further versions of this thing into the
  337. Public Domain before the actual release version.
  338.  
  339. Registered Synergy Utilities users get a discount! [big deal] (see below)
  340.  
  341.  
  342. SCRIMAGE Order form (void after July 1, 1988):
  343. _______________________________________________
  344.  
  345. Yes, I definitely like this new trend--paying for software before it's 
  346. finished!  I like to doodle with SCRIMAGE like an etchasketch, and that
  347. alone is worth $60 plus whatever amount you rip me off for the release doc
  348. and disk.
  349.  
  350. Please find enclosed $60 of my hard-earned money which I am paying you to
  351. free up more of your time so you can sit around and think of/implement 
  352. more senseless additions to SCRIMAGE.  (If you make enough off this, please
  353. think of hiring someone else to do the documentation!)
  354.  
  355. Check one:
  356. __________
  357.  
  358. __  I crave the dubious honor garnered from Beta-testing others' software!
  359.     So much so, in fact, that I am willing to pay you $60 to be able to report
  360.     your bugs to you.  I enclose the bread, pay some bills.
  361.  
  362. __  I have already contributed to your questionable efforts in the past by
  363.     paying you for the Synergy Utilities (full $75 registration).  Therefore
  364.     I only enclose $25 for registering as a SCRIMAGE user.  (WhaddamI, crazy?)
  365.  
  366. Check another one if not already registered on Synergy's BBS:
  367. _____________________________________________________________
  368.  
  369. __  Leave me the BBS number and my password on Compuserve, my CIS number
  370.     is:  _________________.
  371.  
  372. __  Compuserve is for wimps!  Call me collect at (Home) (Work) (<=circle one)
  373.     with the BBS number and password.
  374.  
  375. __  My modem is broken so I get all this neat stuff from a friend who foots
  376.     the long-distance bills [heehee].  Just put me on the list for the 
  377.     semi-free release version and let me know when it's done.
  378.  
  379. __  I can't stand the version-change crap.  This one's good enough for me.
  380.     Forget you ever heard my name.
  381.  
  382.  
  383. Name:
  384.  
  385. _____________________________________________________________
  386.  
  387.  
  388. Street Address:
  389.  
  390. _____________________________________________________________
  391.  
  392. City, State, Zip (country):
  393.  
  394. _____________________________________________________________
  395.  
  396.  
  397. Phone:     work                                   home
  398.  
  399. _____________________________________________________________
  400.  
  401.  
  402. Where I got SCRIMAGE:
  403.  
  404. _____________________________________________________________
  405.  
  406. Suggestions:
  407.  
  408. _____________________________________________________________
  409.  
  410. _____________________________________________________________
  411.  
  412.  
  413. Send to:
  414. R. Russell Freeland
  415. SCRIMAGE REGISTRATION
  416. Synergy Corp.
  417. 1780 SW 43 Ave.
  418. Ft. Lauderdale, FL 33317
  419. CIS:76146,371
  420.  
  421. All standard disclaimers hold true.  No guarantees, warranties, or promises of
  422. any kind will be made or kept.  This whole paragraph should be read quickly in
  423. an undertone by Don Pardo.
  424.  
  425.