No announcement yet.

Is there any textbook available for PowerBasic?

  • Filter
  • Time
  • Show
Clear All
new posts

    Is there any textbook available for PowerBasic?

    Just wonder if anyone knows of any textbook written for PowerBasic? Although the manual that shipped with PBCC v2 does seem to touch on just about everything it is still more of a dictionary type of reference than a sort of study guide I would like to acquire.

    It is just to bad that a search on the different web sites list at least 100 or so books on Visual Basic but none, to my knowledge, for PowerBasic.
    I would appreciate any input from the group.



    There have been a few, but they're all out of print as far as I know. If you're
    not compulsive about which version of PowerBASIC, possibly Learning BASIC
    would be useful (available from PowerBASIC, Inc., and aimed at PB/DOS 2.x).

    On the whole, you don't need much more than a general feeling for BASIC and the
    reference manuals to get going. You might also want to keep an eye on the Source
    Code forum and the Downloads area here for good practical examples.

    If we have any aspiring authors out there, this seems like a good topic!

    Tom Hanlin
    PowerBASIC Staff


      Originally posted by Tom Hanlin:
      If we have any aspiring authors out there, this seems like a good topic!
      Don't tempt me. I've written several non-PB articles and have
      been a bit anxious to try a book project on PB/DLL and PB/CC. The
      main problem is that I'm not as good as several of the guys here.
      I'm a competent programmer, but not expert enough all aspects
      of PB to author a book completely alone on the subject. I've got
      the writing and editing skills (I was managing editor for a
      magazine for a year), but I could easily point to a dozen other
      guys just in these forums that have better PB skills.

      I wonder if there is anyone else that would like to work on a
      joint book project? If so, let's talk about it. If three or four
      of us get involved and write chapters, review/edit one another's
      chapters, we could probably get one done. I tell you what. I'll
      write up a list of goals and topics for a PBCC/PBDLL book and
      see what others think.

      The book I'd be interested in doing would be one for people like
      so many of us here: those fed up with VB that want a better way.
      It would be what most of us would consider an introductory text,
      and make regular sidebar references to how to accomplish in PB
      what you know how to do in VB. I suspect this represents a
      greater number of programmers than those completely new to
      programming and learning PB as a first language. I could be
      wrong. Of course the book should focus on the correct way to do
      things and not just be a VB-to-PB script. Plus, it may lend some
      more public acceptance/legitimacy to PB. I suspect more than a
      few of us have been sneered at by the C/C++ crowd who laugh at
      writing serious software in BASIC (though many of us are also
      C and C++ programmers that know from experience PB is superior
      in many cases).

      The idea is just talk at this point, and if it fizzles out, then
      maybe the community's not ready for one yet. But if it takes off,
      I'm more than willing to take part, even a primary role. Please
      don't take this as ego on my part; I've been thinking about doing
      one for several months now, but I don't think I'm enough of an
      expert to do one alone. I may not even be the right person to do
      any of it... but I'll take a stab at it. I'll post a goal and
      topic list later.

      Troy King
      [email protected]
      Troy King
      katravax at yahoo dot com


        ..A book like this could be a great marketing tool for
        PowerBasic. I would love to see a Book on the selves of
        Barnes & Nobles (or/and other bookstores) that had "PowerBasic"
        in the title.
        ..Good idea, hope you can take it foreward.


          This is only a half-hour or so worth of work on this, and it was
          off the top of my head. Since I'd want to book to also be usable
          by a new programmer, I will review topic lists in other introductory
          texts to see what I've left out.

          Comments and additions would be *highly* appreciated.

          Goals and Topics for a Programming Book using PB/DLL and PB/CC

          The goal of the book is to serve as an introductory text to
          programming Windows GUI and console applications with PB/DLL and
          PB/CC. The main text would be solely PB, but frequent sidebars
          (and perhaps an appendix) would be provided for those coming from
          Visual Basic, as I believe a great number of new PB users are
          former VB users, or are using PB to enhance their VB
          applications. Previous programming skills will not be assumed;
          this book should be usable by a complete beginner.

          The code samples should be frequent, trivial, and show usage of
          the specific topic, because I find that samples that build a
          single application across the course of a book are far harder to
          follow and understand, and less useful as a quick reference.

          The GUI portion of the book would focus on using DDT to build
          interfaces rather than SDK-style. I would consider SDK-style
          GUI-building an intermediate topic rather than beginner. Maybe
          for a second book? It's that SDK-style coding requires so much
          more peripheral knowlege than DDT. Of course some basics such
          as building and converting resource files would be covered.

          Topics, not in order

          Introduction: What is PowerBasic
          * Features/Discussion of the compilers
          * Why are there two separate compilers?
          * How is PowerBasic different than Visual Basic?
          * The PowerBasic Editor

          PowerBasic Projects and Compiling
          * What makes up a project?
          * Managing Include files
          * Comments
          * Understanding directives

          Datatypes, Variables, and Operators
          * Datatypes
          * Variables
          * Constants
          * Scoping
          * Pointers
          * User-defined datatypes and Unions
          * Register Variables
          * Operators
          * Datatype converstions

          Functions and Subroutines
          * Functions
          - Using In and Out Parameters
          - Understanding Byval and Byref
          * Subroutines

          Conditional Programming
          * If..End If
          * Select Case
          * Do..Loop, While..Wend
          * Goto, Gosub

          DDT Basics
          * Creating a simple Windows application
          * Understanding handles, callbacks, and messages
          * Understanding window styles and extended styles
          * Using standard windows controls
          * Understanding Tab Order

          Using Controls in DDT
          * (Cover using each standard control)
          * Using custom controls

          Using Menus in DDT
          * (Cover using menu statements)

          DDT Advanced
          * Different techniques for handling messages
          * Using the windows "common controls"
          * Short overview of SDK-style GUI programming
          * Mixed DDT/SDK style

          Calling Windows API functions
          * Understanding datatype differences
          * Using API functions

          Resource Files
          * Resource editors
          * Resource syntax
          * Converting and using them in PowerBasic

          File I/O
          * Understanding file read/write modes
          * Understanding Windows file lock modes
          * Basic I/O statements
          * Directory and disk functions
          * Different techniques for handling I/O tasks

          String Handling
          * Variable-length strings
          * Fixed-length strings
          * (Cover each keyword with copious examples)
          * Regular Expressions

          Math Operations
          * (Cover each keyword with examples)
          ***I could really use some help with topic ideas on this one***

          Error Handling
          * Compile errors vs runtime errors
          * Error trapping
          * Error handling
          * Resuming execution
          * Different error handling techniques

          Comm port Programming
          ***I have never ever in my life had to talk to a comm port***
          ***Someone else would definitely have to help here***

          TCP/IP Communications
          * Introduction to TCP/IP and sockets
          * Creating a client application with TCP
          * Creating a server application with TCP
          * Using UDP

          CGI Applications
          * Understanding HTTP packets
          * Using STDIO and PB/CC for CGI
          * Using the CGI app on some common web servers

          Debugging Applications
          * Purpose of debugging
          * Using the debugger
          * Alternate debugging methods

          * Understanding threading issues
          - Global variable handling
          - Race conditions
          - Timeout conditions
          * Creating and using threads

          Advanced Techniques
          * Callback Functions
          - Gosub Dword and Goto Dword
          ***Other ideas??***

          Miscellaneous Topics
          * (Misc keywords)

          Optimizing your Application
          * Efficient variable use
          * Speed comparisons of different operations
          * Loading/Unloading DLLs to conserve memory
          * Making your application a good Windows citizen

          Troy King
          [email protected]
          Troy King
          katravax at yahoo dot com


            It would be interesting to have a few chapters on "the real world". There are plenty of people here who have created small libraries and code routines to ...

            print stuff
            connect/disconnect to the internet
            talk to web sites to get stock info, etc
            send email
            get/set file information (date time, etc)
            creating custom controls
            using common dialogs
            dynamically allocating memory (pointers)

            while some of the things are above in the samples that come with pb, the rest are solutions that people have come up with to solve their real world problems. i'm sure many of the authors that have posted things in the source code forum would be willing to donate to the book.

            Best Regards,

            Don Dickinson


              Good idea Don

              call them case studies and choose examples that illustrate various techniques.
              [OOPS - Sorry Troy did not see you already had that in there]
              Since this is the age of the net I'd suggest touching on CGI/ISAPI
              in the TCP communications[/OOPS]. It might be worth adding a strategy
              section showing which language features/constructs are applicable
              for which kind of situtation in each section.




              [This message has been edited by Florent Heyworth (edited March 18, 2001).]


                The idea that it's not practical to write because you're not the #1 PowerBASIC programmer
                in the world should definitely go down! A beginner's book in particular would perhaps be
                better served by folks who have recent experience of beginning PowerBASIC. The ability to
                program is also no particular guarantee of communications skills.

                It's easier to propose a project than to get it rolling-- but this sounds like a great
                idea, and please let me know if I may lend a hand. [email protected]

                Tom Hanlin
                PowerBASIC Staff


                  Hi Folks,
                  I sure hope this project gets off the ground. I also would like to say that an expert programmer who cannot communicate his thoughts is of less value to most of us as compared to a person who does have a good feel for the subject and can convey the
                  essence of the subject. Just to get started in a orderly learning process is of much greater value than reading a short synopsis written by an 'expert'.

                  Good Luck on your endeavor.



                    Wow, thanks for all the good suggestions and comments! I consider
                    this now an active project.

                    I've set up a private Yahoo Group as a starting place for working
                    on the project. I have a feeling the discussion would outgrow the
                    PB Forums, and PB might not like us using the forum for such an
                    indirect project. I've got the group set as unlisted,
                    unmoderated, and membership has to be approved. I'm not planning
                    on denying anyone membership, but thought this would prevent
                    joining by random Yahoo browsing. Group info is:

                    Group name: pb-book
                    Group email: [email protected]
                    Group home page:

                    I'm not exactly sure how the subscribing works since it has to be
                    approved; I assume I'll get an email from the group engine or
                    something. I'll work it out. Anyone interested in joining either
                    join via the above info or send me an email at [email protected]
                    and I'll figure out how to get you added. The group's not only
                    for authors, but for anyone interested in helping shape the
                    direction of the book.

                    Thanks again for the kind comments, and I hope to see you in the

                    Troy King
                    [email protected]
                    Troy King
                    katravax at yahoo dot com


                      ..I don't know if you have thought of a publisher yet. You might
                      consider 'Hungry Minds' they publish the 'Dummies' series of books.
                      They have just announsed release of 'Beginning Programming For Dummies',
                      this book is going to use Carl Gundel's 'LibertyBasic' as the free
                      programming language. LibertyBasic compiles to pseudo code and
                      uses a run time EXE.
                      ..If LibertyBasic can get a book on the shelf at Barnes & Nobels then
                      it is about time PowerBasic had a presents.
                      ..Check the following web site:


                        Originally posted by Martin Francom:
                        ..I don't know if you have thought of a publisher yet. You might
                        consider 'Hungry Minds' they publish the 'Dummies' series of books.
                        Thanks for the info. I've been hoping to get in with O'Reilly. I've
                        got the draft of one chapter nearly done (should finish tonight),
                        and I'm still working on the proposal. I've been doing everything
                        "The O'Reilly Way" so far, but haven't yet completed the proposal
                        because some of the topics are still up in the air.

                        Troy King
                        [email protected]
                        Troy King
                        katravax at yahoo dot com


                          Hi Troy,

                          Best of luck on your endeavor. Will look for your book on the shelves Borders. Of course you will need time. I think I speak for many and we will wait.

                          Again Good Luck