Commodore B Series Software


Since only the B128-80 and 610 really made full production, this is going to be a rather short page as this subject was one of the key reasons for the failure of this Commodore product line to reach the true potential that the engineering design could have supported. Basically, there were two offerings of commercial software, those from Commodore itself and those from third parties. Of course, many users wrote their own software, and still many others ported software from other Commodore products. Well, after the failure of the product line had been realized, the Chicago B128 Users Group (CBUG) was instrumental in making sure that two alternative software platforms saw the light of day - MS-DOS® and CP/M-86. Thusly the B-Series had a total of three potential operating platforms for software development.

It's interesting to note that, unlike the later Commodore 128s' CP/M® support, the diskette format of the B-Series for both MS-DOS® and CP/M-86 had to be Commodore proprietary GCR encoding and not industry-standard MFM. This can be attributed to the lack of diskette drive product from Commodore that could support this, even though the 1982 Commodore annual stockholders report mentions these new drives as under development. No special diskette drive, like a 1571 for the Commodore 128, was available. Standard Commodore production IEEE-488 storage devices, including diskette and hard disk types, could be used with CP/M-86 1.1 or MS-DOS® 1.25 on the B-Series. However, the hard disk drives were not supported by the MS-DOS® version 1.25 ported to the B-Series - only the CBMTM diskette drives could be used here. There was never any commercial software made for the B-Series for the MS-DOS® or CP/M-86 operating systems, though user groups and private owners brought over a number of CP/M-86 programs.

Most all B-Series native software titles were copy- protected in some form. This was the norm at the time of the B-Series introduction, and some titles even required dongles or ROM expansion cartridges. I can recall one that plugged into the DatassetteTM port, for example. Because of the various copy protection schemes, commercial B-Series software can only be collected in its original diskette format today. All titles were on CBMTM 8050 100 tpi DSQD format diskettes which supported only the CBMTM 8050. Many titles will not load at all on the CBMTM 8250, SFD1001 diskette drives or the Commodore 8250LP dual disk drive even when those drives are programmed for 8050 emulation.


Commodore Commercial Software Titles

Based on the product-numbering scheme, Commodore managed to plan for some thirty "B" series software titles numbered B001 thru B031 before management pulled the plug on the product. The 1983 edition of the Commodore Software Encyclopedia (printed in May, 1983) lists on page 792 four CP/M-86 titles (Wordstar, Calcstar, Multiplan and Mailmerge) of which only Wordstar has ever been seen along with those that are known to have been released. Also planned for release were EasyCalc, EasyFile, EasyScript, EasySchedule, EasyPlot, and EasySpell. In reality, though, less than half of the possible 30 actually made it into development, and half of those into production in the U.S. only. These titles, like some of other Commodore platforms (like the VIC-20, 64, and 128) were to be marketed under the Commodore brand name. The Commodore-branded titles that made it into official production that I am aware of are listed here, and others I know exist but don't know the CBM part number I have indicated. But that still leaves 25 or so titles unaccounted for. Today, we assume that these never came to exist. But it would be interesting to know what they originally were planned to be, or if prototypes exist such as do for Wordstar, Microsoft® DOS 1.25, and CP/M-86 1.1.

 

Software Licensed from Info Designs

B010 General Ledger

B011 Accounts Receivable

B012 Accounts Payable

B013 Inventory Control

B014 Payroll

B015 Order Entry

Forms are still available for the above B-Series software packages from the following vendors:

Form-Masters

 

Software Licensed from Precision Software

B030 SuperScript II

B031 SuperBase

Software Licensed from Microsoft® Corporation

B0?? Multiplan

 

B0?? MS-DOS® 1.25

Above title released thru CBUG only to membership, required 8088 coprocessor option, proprietary GCR format 430KB diskette media only.

The Commodore B-Series website is the only site authorized by Microsoft to redistribute the Commodore variant of MS-DOS® 1.25 to users who comply with the requirements for redistribution. If you agree with their requirements write me saying so for a ZIPed .D80 image. I will ask that you supply your Bs' serial number so I can keep a record in case Microsoft ever challenges me on this authorized redistribution. Microsoft® MS-DOS® version 1.25 is copyrighted by Microsoft.


Software Licensed from Digital Research

B0?? CP/M-86® 1.1

Above title released thru CBUG only to membership, required 8088 coprocessor option, proprietary GCR format diskette media only. Included support for 9060/9090 hard disk drives. Image is from an October, 1983 release Commodore made to software vendors working on support for the B Series launch. I also have the image from the initial June 1983 release of version 1.0.

These releases included Commodore B Series ports of Move-It from Woolf Software (communications) and WordStar from MicroPro International (document processing). I have donated .D80 images of both my original CP/M-86 1.0 and 1.1 boot diskettes where they are licensed to be made available. You can download either of them from The Unofficial CP/M Website


CP/M is a registered trademark of Digital Research and its successors.

Other Commodore branded software with unknown origin or part number

B0?? CBM Terminal V2.0

 


Third Party Commercial Software Titles

Software from Precision Software

This company also sold software directly besides licensing titles to Commodore.

SuperScript III

SuperBase II

SuperOffice

Easy Script

Software from Handic Software

Calc Result

Word Result

It is interesting to note that Handic's Calc and Word Result above are the only known commercial titles for the B-Series with a cartridge!

Software from JCL Software

700 Assembler

700 Workshop

This title was initially available on cartridge, but was finally released on diskette only. I have a 24KB RAM expansion cartridge for bank 15 from JCL also which they probably made available after changing plans!

Software from Northwest Music & Computer

Inventory

Point of Sale

The above titles required Commodore/Precision Software's SuperBase to run.

Software from LemData Software

BeeLine

Software from Oxford Computer Systems Software, Ltd.

PetSpeed BASIC Compiler

This title will only function on systems with the 128K BASIC ROMs. It will not function on 256K ROM BASIC.


The Chicago B128 Users Group (CBUG) Library

The CBUG collection represented the world’s largest collection of B-Series software ever assembled. Some 70 uncompressed megabytes of disk images at the core! I am very proud to have been able to largely re-assemble this collection from both my original membership during the mid-80s to the remaining CBUG printed, microfiche, and diskette library assets turned over to me as well as my own collecting efforts over the years since 1997. Many of these disk images contain rare information CBUG saved from destruction by Commodore. I am currently in the process of converting the library assets of original 8050 diskettes into ZIP-compressed D80 images. I have already gained the formal permission from the last legally authorized custodian to host the collection for the free enjoyment of the B-Series internet community today, subject to copyrights still in force. In addition, I am making several non-CBUG collection items and other items of interest available at Funet, where there is a pointer back to this site as well. There are still 11 library diskette images not accounted for though!! If you have CBUG#16,17a,20,23,34,35,45,77.11,80,82 or #PR7 please contact me. I have the permission to make them freely available here, too, if I can locate them. When you see a "CBUG#.number" format below it means that the item spanned multiple diskettes and was orginally delivered that way. If it has a letter "a" it was superceding or altering the prior number, and if it has an "R" it is a case where CBUG accidentally used the same library number (thought CBUG #96 appears the only case of this)!

These images contain material(s) which is (are) copyrighted by their original author(s). They are not freeware, nor are they covered by open-source licensing such as the GPL. Their use is copyright restricted; see the terms and conditions page of this site for details. Your access of these files constitutes your acceptance of the sites terms and conditions of use.

***CBUG Library 1985 - 1992***

CBUG#1

CBUG#2

CBUG#3

CBUG#4

CBUG#5

CBUG#6

CBUG#7

CBUG#8

CBUG#9

CBUG#10

CBUG#11

CBUG#11a

CBUG#12

CBUG#13

CBUG#14

CBUG#15

CBUG#16

CBUG#17

CBUG#17a

CBUG#18

CBUG#19

CBUG#20

CBUG#21

CBUG#22

CBUG#23

CBUG#24

CBUG#25

CBUG#26

CBUG#27

CBUG#28

CBUG#29

CBUG#30

CBUG#31

CBUG#32

CBUG#33

CBUG#34

CBUG#35

CBUG#36

CBUG#37

CBUG#38

CBUG#39

CBUG#40

CBUG#41

CBUG#42

CBUG#43

CBUG#44

CBUG#45

CBUG#46

CBUG#47

CBUG#48

CBUG#49

CBUG#50

CBUG#51.P

CBUG#51.I

CBUG#52

CBUG#53

CBUG#54

CBUG#55

CBUG#56

CBUG#57

CBUG#58

CBUG#59

CBUG#60

CBUG#61

CBUG#62

CBUG#63.1

CBUG#63.2

CBUG#64

CBUG#65

CBUG#66

CBUG#67

CBUG#68

CBUG#69

CBUG#70

CBUG#71

CBUG#72

CBUG#73

CBUG#74

CBUG#75

CBUG#76.1

CBUG#76.2

CBUG#76.3

CBUG#76.4

CBUG#76.5

CBUG#76.6

CBUG#76.7

CBUG#76.8

CBUG#76.9

CBUG#77.1

CBUG#77.2

CBUG#77.3

CBUG#77.4

CBUG#77.11

CBUG#78

CBUG#79

CBUG#80

CBUG#81

CBUG#82

CBUG#83

CBUG#84

CBUG#85

CBUG#86

CBUG#87

CBUG#88

CBUG#89

CBUG#90

CBUG#91.1

CBUG#91.2

CBUG#92

CBUG#93

CBUG#94

CBUG#95

CBUG#96

CBUG#96R

CBUG#97

CBUG#98

CBUG#PR1

CBUG#PR2

CBUG#PR3

CBUG#PR4

CBUG#PR5

CBUG#PR6p

CBUG#PR7

CBUG#PR8

CBUG#PR9

CBUG#PR10

CBUG#PR11

CBUG#PR12

CBUG#PR13

CBUG#PR14

CBUG#PR15

CBUG#PR16

CBUG#PR17

CBUG#PR18

CBUG#PR19

CBUG#PR20

CBUG#M20

CBUG#M45

CBUG#M54

CBUG#M55

CBUG#M80

CBUG#M81

CBUG#M82

 

 

 

 

 


Other Websites with Software Images

The following websites have images of original user group library diskettes, user written software, and copies of commercial software titles listed above.

Independent Commodore Library

The images at this site are largely from CBUG and Toronto PET User Group (TPUG) collections.

Working with the Internet:

In order to get software from the internet onto your B Series computer, you will need the following additional hardware and software items:

         An IBM PC or compatible running 32-bit Windows or Linux.

         A copy of CBMLINK v0.9.7 if you want to work with diskette images. I HIGHLY recommend this public domain shareware. It supports the P500, B128, B256, CBM 128-80, and CBM 256-80. The B128 version code *may* work on the B500. It transfers images at 19200 N81 over COM1. I have personally tested it on all but the B500 and P500. I did have to fire up Microsoft Visual C++ to make a serial port API correction to run on Windows XP at 19200 reliably though.

         An RS-232 serial cable with a 25pin male and 9pin female fully wired thru and null modem adapter on the 25pin side.

         A Commodore 2031, 2031LP or 4040 if you want to work with D64 images. Or a Commodore 8050, 8250, or 8250LP dual floppy diskette drive or SFD 1001 single floppy diskette drive if you want to work with D80 or D82 images.

         And optionally, a copy of the VICE emulator - you can use this to test the images you make.

Here's the basic idea:

To copy diskettes into images you can host on the internet, this is what works for the B Series.

First, you have to get the simple machine language code that runs on B series side to the computer. The only way to do this without a copy already on diskette is to use the null modem serial cable setup described earlier and Xmodem it over from the PC. You can use Hyperterminal on the PC side. You have to use either Teleterm 80 from CBUG diskette #11, or if you do not have this you will have to locate and type in from the internet one of the Commodore 64 Xmodem programs. Use 2400 N81 Half Duplex for line settings on both ends to transfer the file. Alternatively, you can write me about getting a physical copy of Teleterm 80.

For D80 and D82 images (e.g., 8050, SFD 1001, and 8250/8250LP type diskettes) or D64 images (e.g., 2031, 2031LP, or 4040), you attach the PC to the B-Series computer using the null modem serial cable setup described earlier. You then use CBMLINK software running on both computers (PC & B) to copy real diskettes from the B Series' diskette drive to diskette images on the PC’s hard disk or visa versa. You can use VICE here again to view the images and even to load and test files within them with the emulator.

The command to do this is simply:
cbmlink -c serial COM1 -dr0,3 filename.dxx

The COM1 is for the default serial port on your Windows based PC, it may be something other than COM1 for you. The 0,3 specifies a drive 0 interleave factor of 3. The "xx" will be either 64, 80, or 82 depending on your source drive model. This will copy an 8250LP image in 20 minutes or a 2031LP image in 12 minutes. Make sure to not put a space after the "dr”.

If you want to move the programs from the internet over to your B-Series system physically, then you just reverse the above steps. Going from the image(s) back to the physical diskette(s). Of course the 1541 format represented by the D64 image was incompatible with the usual B Series diskette storage devices such as the 8050, 8250, 8250LP, and SFD 1001. So this is why you will need to have either a 2031, 2031LP, or 4040 drive with your B Series in order to receive and read the 1541 format diskette contents. You can find these drives on Ebay on occasion. The command to write an image file to a genuine diskette drive diskette is:

cbmlink -c serial COM1 -dw0,3 filename.dxx

You might also be able to use a 2040 drive - an older version of the 4040 - but the others may have trouble reading 2040 diskettes depending on the ROM level. Also note that most, if not all, commercial "B" computer titles were copy-protected 8050 diskette format. So in some cases an 8250, 8250LP or SFD-1001 will not be able to run them - you will need a genuine CBMTM 8050 dual diskette drive.

Either way, these here are about the only ways to do it once you have the needed cable(s) and software.


User-Written Software

The B-Series computers included an advanced version of Commodore BASIC 4.0 known as 4+. In particular it includes new commands to deal with banks, if/then/else and print using constructs. While it is another CBM implementation of Microsoft® BASIC, there are several differences to keep in mind when porting to/from other Commodore platforms.

         There is no TI reserved variable. Instead there is a TI$ reserved variable that included tenths of second information. To port code that includes TI, add the statement TI=VAL(TI$)*6 for reasonable compatibility since the B series tick is 1/10 of a second instead of 1/60.

         The function keys on B Series computers are reserved with user commands. For compatibility back to Commodore 16, 64, and 128 models use the BASIC 4.0 command KEY. For example, 10 KEY5, CHR$(135) : REM F5.

         DS$ is a reserved variable; it carries the latest CBM diskette drive error channel status.

         EL is a reserved variable; it carries the line number upon which the last BASIC error occurred.

         ER is a reserved variable; it carries the error number of the last error occurrence.

         ST is a reserved variable; it carries the system status for the last I/O operation.

         AND, OR, and NOT are reserved operators.

The B-Series computers use the MOS 6581 sound interface device (SID) for audio operations. This is the same device used in the Commodore 64. But this chip is clocked at 2Mhtz on the B-Series (except for the P500), though it is actually only a 1Mhtz part. The result is that you cannot read information from the chip, only write to it. Also note that the starting address of the SID on the B-Series is at decimal 55808, unlike the Commodore 64. Make adjustments for the different starting address, REM code that attempts to read from the 6581, and it should run just fine on the B-Series.

The B-Series computers use the MOS 6509 microprocessor clocked at 2MHz (except for the P500, which runs at 1MHz). There may be an "A" on the chips silkscreen which indicates this clock speed more formally. The 6509 is upwardly compatible with the MOS 6502 as used in the Commodore PET, CBM, and VIC-20 computers. Though the chip number is lower, it is superior in functionality to the MOS 6510 and upwardly compatible with that part as well. There were other MOS parts not utilized in Commodore products such as 6503, 6505, 6506, and 6507 that were also software-compatible as well as the 6504 which Commodore used in the Chessmate and 4040 dual diskette drive, or the 6508 which had an auxiliary role in the Commodore 900.

The memory map of the B-Series computers is not compatible with any other Commodore product (and there are even incompatibilities between some earlier B systems and the later ones), so machine language will need significant rework to function properly. Stay with KERNAL routines as much as possible; they will be different but it will be easier to port because Commodore at least maintained a subset of the functionality of these from machine to machine. Commodore 64 programs making heavy use of color graphics are best ported to the P500 only.

On the B-Series there were 16 banks of memory at 64K total each that comprised how the 6509 could address up to 1MB of total memory. The 128KB models utilized bank 0 and 1. The 256KB models utilized banks 0, 1, 2 and 3. All models had ROM, expansion ROM/RAM, and some limited SRAM in bank 15. Keep the machine language code running within bank 15, the system bank. Otherwise, the KERNAL routines will not be accessible. You may want to map additional RAM into bank 15 using cartridge expansion.


© Copyright Edward D. Shockley, 1998-2021

All Rights Reserved

Return