NPF.BAS 27 Sep 1997 by Marc Kummel aka Treebeard. Contact mkummel@rain.org, http://www.rain.org/~mkummel/ About NPF: ------------ I've always had a PROGRAM FRAME, a homemade set of routines to handle menus and windows and other common programming chores. NPF (New Program Frame) is the current incarnation. It (and previous versions) is the shared interface for several of my programs in the Vault. Using NPF, I can start a new program that works right off with all support features, and then concentrate on my current problem. NPF is a demo, and a nearly blank program frame ready for use. My program frames have a way of growing more complex over time. See NP as an example that grew *too much*. Visual Basic makes more sense if you need everything. NPF is a deliberate attempt to scale back the features. I really like the way it works, like old Lotus rather than Windows, with valid menu/action choices shown on the bottom line that change as you work. It's quick with a keyboard, but supports a mouse. The code is not much commented (to save space in the IDE), so see the programs LIFE-ETC, CURVES, TREE, CHOP, etc. for working examples and code to study. The file NPFINFO.TXT contains some hints and bugs. NPF is a small demo of these routines that's easy to modify. It doesn't do anything except draw boxes and circles on the screen, but all the support services are there, ready for a new program. * Uses Basic SCREEN 12 640x480 16 colors. * Easy mouse management and event detection. * Uses Windows bitmapped fonts for quality text. * Easy windows limited only by available EMS memory. * Easy menus with routines to get integers, reals, strings, select from lists, bump flags, etc. * Export screens as BMP files to view/edit/print from Windows. NPF uses a small library of assembly routines, but it is mostly written in BASIC, so it's easy to customize. If you don't like it, make your own! File List: ------------ The files shown below the dotted line are source files that can be deleted if you don't need then, but I won't do it for you. NPF.EXE DOS executable NPF.ICO a generic icon for Win31 VGAOEM.FON Win31 font in case it's not on your system README.TXT this file TBVAULT.TXT about Treebeard's Basic Vault ------------ NPF.MAK file list for PDS/QB NPF.BAS source code: main module NPSUP.BI * include file of global declarations and variables GFONT5.BAS * code module to use Windows *.FON fonts EMS4.BAS * code module to use expanded memory SBSUP16.BAS * code module of support routines TBLIB.QLB * Quick Library of misc assembler routines TBLIB.LIB * Library files for compiling TBLIB.TXT info on the TBLIB library XQB.BAT batch file to start PDS with source code MAKE.BAT batch file to compile and link from DOS prompt TBEXTRA.BAS module of useful extra routines NPFINFO.TXT a few misc hints and bugs about using NPF routines NPF was written for MS Basic PDS 7.10. QB4.5 will probably need some changes. It won't work with QBasic. The code requires special library routines and EMS sharing so start PDS with /L TBLIB and /ES options, or use the XQB.BAT batch file. The files marked with [*] are used by several other programs in the Vault. They should be copied to the program directory. Conditions: ------------- This program and source code are yours to use and modify as you will, but they are offered as freeware with no warranty whatsoever. Give me credit, but do not distribute any changes under my name, or attribute such changes to me in any way. You're on your own! Send comments and fixes to: Marc Kummel aka Treebeard mkummel@rain.org http://www.rain.org/~mkummel/ For more interesting Basic software with source code, check out Treebeard's Basic Vault at http://www.rain.org/~mkummel/basic/