1: Differences between BEX 2.2 and BEX 3.0

This document summarizes all the significant changes in the new version of BEX. We assume that you are currently using BEX 2.2, and that you have read the BEX 2-2 FEATURES chapter that talks about the differences between BEX 2.2 and earlier versions. (This chapter was supplied on the BEX 2.2 update disk. If you purchased BEX after November 1986, then the BEX 2-2 FEATURES chapter is on your BEXtras disk.)

Revised Documentation

We completely rewrote the BEX Dox. We guarantee that, even if you know BEX by heart, you'll learn some new things by reading the new BEX Dox. The audio version has a much better tone-indexing system; the "Reference Tape" contains the complete Table of Contents, making it easier to find your way around. The braille version uses the Code for Computer Braille Notation. The large print version uses changes in typeface that make it much easier to find the information you're after.

If you are involved in teaching BEX to new computer users, you'll be happy to know that we narrowed the focus of the Learner Level. We only discuss a few Editor commands. Learner Level Section 5 includes an extensive discussion of setting up your printer correctly. In that Section, we use the "GRID" chapters supplied on your new BEXtras disk to help new users understand the numbering system used in BEX format commands.

Master Level Section 6, Contextual Replace, wins the prize for greatest expansion. Your old Section 7 was 13 print pages; the new version is 55 print pages. We hope this means more people can take advantage of this powerful feature.

Since we tried hard to make the new Dox as wonderful as sliced cheese, we won't go in to great detail in this document. Check the Index (Appendix 6) when you need more information about any of the features we describe here.

As always, we want to warn you about BEX bugs when we can. The back side of the new BEXtras disk contains a KNOWN BEX BUGS chapter, which supersedes all other known bug li/s--or as we used to call them at our stuffiest, "Known System Anomalies."

Apple IIgs Support and 128K Apples

We strongly recommend the 128K Apple as the appropriate base for BEX. We therefore discourage use of the Apple II Plus; all information regarding its use is moved to Appendix 4 in the revised BEX Dox (where you'll find some sneaky ways to use Master Level features on an Apple II Plus). There is a compelling reason for urging the 128K Apple. BEX 2.2 and earlier versions essentially functioned in a 64K environment. The additional 64K of auxiliary memory in a 128K Apple was used only to store program segments--in particular, the Editor, Print, and Replace programs. When the time came to execute these programs, they were copied from auxiliary to main memory. One of the most dramatic changes for BEX 3.0 is that programs are actually executed in the 64K auxiliary memory. This allows for larger programs, and therefore, some new features. (By the way, if you have been using a Titan Accelerator speed-up card, you will perceive a definite slowing down with BEX 3.0. That's because the Titan card only speeds up main memory activity.)

BEX 3.0 supports the Apple IIgs in a variety of ways; check Apple IIgs in the Index for details. It's quicker to mention the limitations of our Apple IIgs support:

Zippy Chapter Becomes Ready Chapter

Because the Apple IIgs can not display the <DEL> character checkerboard, we had to change the name of the Zippy chapter. It's now the Ready chapter; its single-character name is right bracket. We called it the Ready chapter for two reasons: The Echo pronounces ] as "ready," and the Ready chapter is always ready for your data, even when you don't have a disk in the drive.

The Ready chapter is much larger on the Apple IIgs, since the IIgs comes with a minimum of 256K memory. The Ready chapter in memory is 20 BEX pages on the Apple IIgs. Any Ready chapter page files with an extension of .U or later are written to disk on your default data drive.

If you have created automatic procedure chapters that include the <DEL> character for the Zippy chapter, use Replace characters to change the <DEL> to right bracket. This won't affect the final character in the auto chapter, which is a high bit set character. (See Master Level Section 7 for a much clearer discussion of auto chapters.) However, if your auto chapter included the <DEL> as a page number token, you will have to manually change it back to <DEL> after replacing.

Large Print Scrolling

We have completely revamped the large print screen display in BEX. Earlier versions used the "screen flip" system. You saw one screen of data, then it manually or automatically flipped to the next screen. BEX 3.0 replaces this with true scrolling. This scrolling is available at all menus. It's also used inside the Editor; when you enter text for Locate you see a cursor on the line above the status line. Ten or five column screen also scrolls when you press control-W A. You can control the speed of scrolling; you can momentarily freeze the screen display, and you can slow the screen display down to a crawl. Check the Thick Reference Card for details on how.

Configuration Changes

BEX 3.0 supports many more disk drive options; see the separate section on Disk Drives that follows.

When configuring at the User or Master Levels, you may specify "auto linefeed" and/or "pause on form feed" for braillers. BEX no longer asks the "auto linefeed" question for large print printers, since you must answer yes. (That was probably the single most troublesome thing when trying to do BEX large print.)

There's a new Starting Menu option: R - Recognition of cards. This option lets you teach BEX about circuit cards it doesn't recognize. Interface Guide Section 15 tells how and when to use this new option.

Disk Drive Changes

BEX 3.0 includes many features allowing Master Level access to more disk drives. In previous versions of BEX, we used the term "nonstandard disk drives" when talking about the Disco-RAM, RAM drives, and the Sider. This is replaced with a more positive term in BEX 3.0: "extended disk systems." Please read Master Level Section 3 for all the details. We found it very hard to get the Disco-RAM and BEX to cooperate; since BEX 3.0's RAM drive support is so thorough, we no longer support the Disco-RAM card.

Configuring RAM drives

When your Apple has more than 128K memory, BEX 3.0 lets you configure portions of memory as RAM drives. (Extra memory can come from an auxiliary slot card on the IIe, its equivalent on the IIc, a memory expansion slot card on the IIgs, or a slot 1 through 7 card on any Apple model.) You may assign one of these RAM drives to the Main program. When you do, BEX checks to see if the Main side software is on the RAM when you press the spacebar at the Starting Menu. If the programs are not yet there, BEX prompts you to insert disks and automatically loads the software as required.

As you're configuring RAM drives, BEX gives you on-line help--as always, press <CR> alone at a configuration prompt for an explanation.

3.5-inch disk drives

BEX 3.0 includes a specially patched version of DOS 3.3 that works with 3.5-inch microfloppy drives, so 3.5-inch microfloppies may be used for your BEX data. However, BEX still requires that the program be booted and loaded from a 5.25-inch floppy drive, so your system must have at least one 5.25-inch floppy disk drive. When you include 3.5-inch disk drives in your configuration, then you can read ProDOS textfiles from ProDOS 3.5-inch disks, as well as read and write DOS 3.3 data. Remember, however, that Read textfile can only find ProDOS textfiles at the root directory level.

In previous versions of BEX, you were limited to 6 "virtual drives." One of these drives could be the controller card for a Sider hard disk, which in turn gave you access to the Sider's own "volume number" virtual drive system. BEX 3.0 allows 8 virtual disk drives, one of which may by a Sider. It's possible for one configuration to include two 5.25-inch floppy disk drives, two 3.5-inch microfloppy disk drives, one Sider with many disk "volumes", plus three RAM drives from an extended memory card.

BEX 3.0 handles a wider range of disk drives, which requires some modification of the Starting Menu. Option I - Initialize disks prevents you from initializing a RAM drive; you may initialize 5.25 or 3.5-inch disks. Option C - Copy disks refuses to copy anything except 5.25-inch disks. (The April 87 RDC Newsletter article about RAM drives warned about conflicts between the RAMDRIVE software and initializing from the BASIC prompt. BEX 3.0 automatically modifies the RAMDRIVE program, so you can use options I and C on the Starting Menu and even type INIT HELLO at the BASIC prompt.) FID now copes when a drive number is greater than 2; you can use FID to copy to slot 3, drive 5 or slot 5, drive 4.

On-line list of disk drives configured

Since BEX 3.0 supports RAM drives, 3.5-inch drives, and various other combinations, it's easy to momentarily forget the relationship between the virtual drive numbers you configured and the slot and drive numbers of the actual disk devices. At all BEX menus, you have option D - Disk catalog. When you press D, BEX responds with Which drive? # where # is your default data drive, the highest virtual drive number. Enter question mark followed by <CR> to obtain a list of virtual drive numbers and the slot and drive they relate to.

In the same vein, we added one more scanning option for the Drive number or chapter name: as well as the Which drive? prompts. Entering slash followed by <CR> is the same as entering the number for your default data drive.

Menu Changes

As mentioned earlier, there's a new option R - Recognition of cards on the Starting Menu. What is in this computer now li/s the current configuration name and whether RAM drives are available. You may have encountered a bug trying to initialize totally blank disks twice in a row. Option I - Initialize disks no longer assumes you want to initialize another disk; after the initialization in complete, you're back at the Starting Menu.

When working for a long time at the Page Menu with earlier versions, BEX may have crashed with the OUT OF MEMORY error. You may also have encountered this error when working with long li/s of chapters. BEX 3.0 manages memory much better, so these problems are a thing of the past.

Moving between Starting and Main Menus

In earlier versions of BEX, the Editor, Print, and Replace characters options were loaded in auxiliary memory before you got to the Starting Menu prompt. Now these programs are loaded when you move to the Main Menu. The net result is that you get the Starting Menu prompt faster after you supply a configuration name; the time saved is added to the time it takes to move between Starting and Main Menus.

We changed the name of the Starting Menu program. In earlier versions, MAIN was the name for both the Starting Menu and the Main Menu. This allowed you to move from the Second or Page Menu to the Starting Menu by inserting the Boot side and pressing J. Now, the Starting Menu is named START so you can only move between the Main Menu and the Starting Menu. If you press <space> at the Main Menu and your Boot disk is not in drive 1, then you'll get a Program segment cannot be loaded error message.

Preventing spacey chapters

Whenever you name a BEX chapter, BEX now checks to make sure that the chapter name won't end in space. This checking occurs whether you're typing the chapter name or you're using a target chapter naming method. In previous versions, a BEX chapter name ending in space was a real pain: it appeared in catalogs and numbered chapter li/s, but you couldn't use it for anything.

VersaBraille Issues

On the Main Menu, Auto print from VB, To VB, and From VB work as they always did, but you'll notice some slight rewording of the prompts. The software for these options are loaded differently in BEX 3.0. Because of the change, you can no longer include option A - Auto print from VB in an automatic procedure chapter.

To transfer data from BEX to the disk-based VersaBraille II, you configure one printer as class P - Paperless brailler. In earlier versions of BEX, a Paperless brailler functioned just like a generic printer, except that BEX automatically placed the $$z zap format command at the start of each print stream. If your chapter contained the $$d reset to default command, then BEX would wake up and start formatting the text. If your chapter contained any control characters, in particular the <ASCII 30> discretionary line break, you had to use the FILTER transformation before you printed to the VersaBraille II. These problems are history. A Paperless brailler in BEX 3.0 automatically filters <control-T>, <control-S>, <ASCII 30>, and <ASCII 31>. The Paperless brailler never interprets any $$ commands.

Second Menu Changes

Partition chapters goes away

We have removed option P - Partition chapters from the Second Menu. Here's why: Partition chapters was a remnant from BRAILLE-EDIT days. If you can remember back that far, BRAILLE-EDIT'S Page Menu only allowed you to grab a single page at a time to an existing chapter. BEX's Grab pages is much more flexible. When you want to create two (or more) chapters from an existing chapter, you can use Grab pages into a new chapter. By using Grab pages, you are copying information into a new chapter.

BEX's Partition chapters was "destructive"; it did not make copies as it divided the source chapter. Because Partition was destructive, it always worked on the "home" drive. Even if you specified the First new target chapter and Second new target chapter on different drives, they were created on the drive where the source chapter was. This was BEX's only "destructive" option, and the only one where you could not direct the target chapter to a different drive, so removing it increases consistency.

No marking BEX page breaks when writing textfiles

With BEX 2.2 and earlier, you're prompted Do you want page markers? N when you Write chapters to a textfile. When you answer Y, BEX theoretically places a control-Y in the textfile at the transition between BEX pages. When you Read a textfile to a chapter, BEX theoretically moves to a new BEX page when it encounters a control-Y. We're using the word "theoretically" for a good reason--we have never been able to make this feature work correctly. Each BEX version has had a slightly different bug in regards to control-Y page breaks. The primary reason we thought this feature up was to facilitate transferring files between BEX and a ProDOS spell checker. Now that QTC is available, we thought, gee, why bother?

BEX page size for Input through slot

You can use option I - Input through slot to capture serial output from a wide variety of devices. Some send print data, like the IBM-PC; others send braille data, like the disk-based VersaBraille II. In earlier versions, BEX created pages holding between 3300 and 3400 characters. When you back-translate pages this big, you can easily have an overflow error.

In BEX 3.0, Input through slot creates two different page sizes. When your data is all lowercase or all uppercase, BEX assumes it's braille, and limits page size to around 3072 characters. When your data is a mixture of lowercase and uppercase, BEX assumes it's print, and changes BEX pages at around 3800 characters.

Improvements to Fix chapters

Previously, Fix chapters could miss some of the page files at disk; when Fix chapters was finished rebuilding the directory file, it left you at the BASIC prompt. In the new version, Fix chapters is bullet-proof; when it's done, you're back at the Second Menu prompt.

Print Program Changes

Preventing crashes when printing to HI-RES screen: In previous versions of BEX, people frequently crashed the program when they printed material from the BEXtras disk to the HI-RES screen--that is: SH, SL, SB, SJ, etc. The worst offender was the RESUME chapter, because it contained $$w72 $$f58 format commands that set the carriage width and form length greater than the built-in values for 40 or 20 column screen. BEX 3.0 is a little smarter in this regard: the print program ignores any $$w# or $$f# commands when # is larger than the maximum carriage width or form length of the chosen screen mode.

You may have encountered some problems trying to center text on the first line of a braille page; these have been fixed. We've added a few new $$ commands: check the Thick Reference Card for information about Roman numeral page numbering, and conditional page breaks.

Editor Changes

Saving the current page

As with previous versions, control-P # <space> saves the current page and moves to page #. The new feature is that control-P 0 <space> saves the current page and then returns you to it, at position zero. (This was a BRAILLE-EDIT feature that was brought back to life.)

Improved Talking Cursor Movement

During voice output with control-G, control-R, control-T, and control-O, BEX boops when passing a hard <CR>. In previous versions of BEX, control-O moved the cursor forward and spoke approximately 500 characters. The number 500 was totally arbitrary; based on user requests, we decided to make control-O talk until the end of the current BEX page, unless stopped with the spacebar. When you toggle off "jerky" speech with control-S J, then BEX pauses at the end of each sentence.

Moving and deleting by lines

We've added a new "unit character" for the advance cursor, zoom back cursor, and delete text group of Editor commands. Just as control-W stands for a BEX word, and control-P stands for a BEX paragraph, control-L stands for an explicit new line: a hard <CR> or the BEX new-line ( $l ) indicator. Control-A control-L does not advance to the next printed or output line--BEX 3.0 does not have a WYSIWYG editor. So when you enter control-A control-L, you advance the cursor to the next hard <CR> or the initial space of the next ( $l ). When you enter control-D 8 control-L you delete text from the current cursor forward up to, but not including, the eighth hard <CR> or ( $l ). When you enter control-Z 6 control-L your cursor zooms back to the sixth previous hard <CR> or ( $l ).

Screen display during keyboard insert

Pressing control-I or Tab now turns all characters in front of the cursor into the underline character. When the insert is completed by control-N (or any other control character) then the underlines turn back into the text that was there. This attempts to make Editor screen display less disconcerting to sighted people during keyboard insertion. It does slow down screen display a bit; if you can't see the screen, enter control-S S N to use 40-column non-HI-RES mode, which is the fastest.

The DP-10 toggle

In previous versions of BEX, all control characters were represented with the <DEL> key checkerboard in W and N Editor screen modes. The DP-10 large print screen display device can not show the <DEL> key checkerboard, nor can it show BEX's HI-RES screen. Enter control-S D to change the control-character representative from the <DEL> key to the at-sign, which the DP-10 can display.

Duration of changes you make to the Editor environment

In previous versions of BEX, most, but not all changes to the Editor environment lasted until you rebooted. We have attempted to make things more consistent. With this version every change to the Editor environment la/s until you reboot with the single exception of braille keyboard mode. When you enter control-S K B and Quit, you really don't want to use braille keyboard at the menus. The commands affected by this change include: control-S A to announce keystrokes; control-S S (letter) to change screen modes; control-S J to toggle jerky speech; control-S B and control-S V to toggle the braille and voice channels; and the two new commands, introduced in the next two paragraphs.

Editor Bug Fixes

The block marker is no longer cleared when you use control-V to preview format in the Editor. Control-O and control-T use the correct pitch at the end of a BEX page.

Back Translator Changes

Option B - Back translate from grade 2 got its first meaningful overhaul in some time. A number of annoying bugs are gone, and there are a few new features. Half an hour spent with User Level Section 9, Parts 2 and 3 will get you up to date on all the latest back translator news.

In brief: the back translator recognizes a mid-word change in capitalization signaled by the termination mark, dot 6, dot 3. Here's a sample with two particularly stinky words. What you want in print is DECtalk and BRaT; you enter ,,dec,'talk and ,,br,'a,t in your grade 2 chapters.

We've changed how the back translator decides between the ble sign and the number sign. The program back-translates dots 3-4-5-6 as a number sign when the word begins with either a letter sign or a single capital letter followed by a number. A good example is Canadian postal codes: you can now back-translate M4G 7Y6 as long as you enter it as ,m#d,g #g,y#f in your grade 2 chapter. In earlier versions of BEX, the back-translator never created a slash in inkprint. With BEX 3.0 you get a slash when your grade 2 chapter contains the two cells, letter sign, st-sign.

Previously, a single letter inside parentheses was gobbled up in back translation. BEX 3.0 translates it without damage. Previously, two hyphens (a braille dash) were back-translated to space, hyphen, space. BEX 3.0 just leaves the two hyphens alone.

When you turn off back-translation with space, underbar, hyphen, space your text is totally left alone. In earlier versions, various problems occurred during no-translation mode. This means you can enter tricky number-and-letter combinations in computer braille and be confident that the back-translator won't mangle them.

Grade 2 Translator Changes

We're getting closer and closer to the elusive goal of a perfect Grade 2 translator. The "dash clash" problem--detailed in the June 1987 Newsletter--has been fixed. The translator generally creates an apostrophe rather than a close single quote after a word ending in the letter so. It used to fail for most words ending in double so. The translator in BEX 3.0 is more clever in this regard.

When you show a range of Roman numeral page numbers, you need to have a letter sign after the hyphen and before the second Roman numeral. For BEX 3.0, the translator automatically creates letter signs for both numbers.

When a word ends in a hyphen followed by a single letter, the translator creates a letter sign, even if the letter is followed by punctuation. For example, the translator places a letter sign before the X in Use control-X. The translator doesn't place the <ASCII 30> discretionary line break character in this situation, since you wouldn't want the letter X all alone at the start of a braille line.

BANA'S November 1986 changes to English Braille--American Edition mandate a different treatment for letters that follow numbers. The new rule is that any time a letter touches a number, you must use the letter sign. Previously, you only added a letter sign when the braille reader must distinguish a letter from a digit: when the letter touching the digit is lowercase and between a and just. We decided not to implement this change.

SlotBuster

It's now possible to have both the SlotBuster and an Echo in your system without BEX acting up. BEX decides which software to load (TEXTALKER or SCAT) depending on which device is in the highest numbered slot. So when the Echo is in slot 4 and the SlotBuster is in slot 1, BEX loads TEXTALKER. When the SlotBuster is in slot 7 and the Echo is in slot 2, BEX loads SCAT. Appendix 2 is devoted to using the SlotBuster with BEX.

BEX 3.0 does not provide a "Set the SlotBuster parameters" question as it does for the Echo family. However, you are asked if you want to send an automatic set-up sequence to the SlotBuster. In previous versions of BEX, you had to remember to change the command character from control-E to a different control character so SCAT wouldn't eat the control-E commands before BEX got them. Now, when you say Y to the automatic set-up sequence question, BEX 3.0 automatically changes the SlotBuster command character to control-Q. You can enter control-E commands to your heart's content. Once you finish the sequence with the <DEL> key, BEX changes the command character back to control-E.

In addition to supporting the SlotBuster's printer ports, BEX 3.0 lets you use the modem port for Input through slot and tape-based VersaBraille transfers. You need to add a 36 adapter to the SlotBuster's cable to attach any RDC-standard cable.

Earlier versions of BEX were very rude when it came to managing the SlotBuster's buffer. When you were using the SlotBuster as both a printer interface card and a voice device, the data you wanted printed frequently got clobbered. BEX 3.0 won't do this. However, you cannot add SlotBuster speech to a document that's being printed through the SlotBuster printer port.

The "enter line review" command character for the SlotBuster's SCAT software is control-R. This has prevented SlotBuster users from beginning or cancelling Remember Mode. For BEX 3.0, the asterisk (*) character functions exactly as control-R does at BEX menus. You can use either control-R or asterisk to start remembering keystrokes, or cancel remembering keystrokes after you've started.