Information on Speakup in SystemRescueCD
This page contains information on using speakup in SystemRescueCD. It will be updated as new information becomes available.
Availability of speakup in SystemRescueCD
Speakup is included in SystemRescueCD versions 0.3.7-earlier, 1.1.0 through 1.4.0, and in SystemRescueCD 1.5.3-later.
Booting with Speakup in SystemRescueCD 1.5.3 and later
Significant changes have been made in how SystemRescueCD 1.5.x and later are booted. The standard boot prompt has been replaced by a menu system. Since the menu used is more than 1 level deep, it will not be described here. It is recommended therefore that the standard "boot" prompt be used instead of the boot menu. However, booting using the default menu choice will be explained below.
Getting to, and using the boot prompt
To get to the "boot" prompt, start your computer with SystemRescueCD in your cd-rom drive, and wait for the cd-rom to start working. About 5 seconds after the drive starts spinning, press the escape key, which will take you out of the menu system, and place you at the "boot" prompt, as was the case in previous versions of SystemRescueCD. Please note that the nokeymap label has been removed starting with SystemRescueCD 1.5.x. The equivalent in SystemRescueCD 1.5.x to the old nokeymap label, is the rescuecd_us label, which will start SystemRescueCD with the US keymap. Alternatively, you may use the rescuecd_std label, which will cause SystemRescueCd to prompt you for the keymap to use. Please note that speakup has been tested in SystemRescueCD only using the US keymap. For a list and description of the speakup parameters that can be used with SystemRescueCD, see the section titled "Booting with Speakup in SystemRescueCD 1.1.0 through 1.4.0" below. For examples describing how to boot with speakup using the rescuecd_us label, see the section titled ""Boot prompt examples with recent versions" below. For a list of the labels you can choose from at the "boot" prompt, see the lines that start with "LABEL" in isolinux/isolinux.cfg, which can be found on the SystemRescueCD cd-rom.
The default menu choice is "rescuecd_std", which should work for most users. To activate speakup using the default menu choice, start your computer with SystemRescueCD in your cd-rom drive, and wait for the cd-rom to start working. About 5 seconds after the drive starts spinning, press the tab key, type a space, followed by speakup=synth=xxx (where xxx is the speakup designation for your synthesizer), and then press the enter key. For a list and description of the speakup parameters that can be used with SystemRescueCD, see the section titled "Booting with Speakup in SystemRescueCD 1.1.0 through 1.4.0" below.
If you really do want to try using the boot menu, here are a few notes. You can navigate through the available menu choices with the up/down arrow keys. To add additional parameters to the menu choice you'd like to boot with, navigate to that choice, press the tab key, type a space, type any additional parameters, and press the enter key. To get an idea of the menu choices available, take a look at isolinux/isolinux.cfg on the SystemRescueCD cd-rom.
Booting with Speakup in SystemRescueCD 1.1.0 through 1.4.0
Speakup is back in SystemRescueCD 1.1.0 and later. In order to boot with speakup, using the U.S. keymap, it is suggested that the nokeymap label be used (SystemRescueCD versions prior to 1.5.x), though you may of course use whichever of the other labels you'd prefer, using the rescuecd_us label is recommended in SystemRescueCD 1.5.3 and later. To start speakup, the following syntax is used:
where "speakup=" specifies that you'd like to boot using speakup, "synth=xxx" specifies the speakup designation for your synthesizer, (please note that software speech is not available in SystemRescueCD at this time), "quiet=x" specifies whether speakup should start speaking right away, or wait until a key is pressed, (see the speakup user's guide for details), "ser=x" specifies the serial port of your synthesizer, and "port=xxx" specifies the i/o address of your synthesizer.
A list of synthesizers supported by speakup, along with their designations, as well as information on how to use speakup itself, can be found in the speakup user's guide, available at http://www.linux-speakup.org/spkguide.txt. Note that the speakup user's guide available at the above URL, may not reflect the latest changes in speakup. Since the speakup info page is specific to speakup as it relates to SystemRescueCD, detailed information on how to use speakup itself, is outside the scope of this page.
Please note as well that the "ser=", and "port=" options are mutually exclusive, and are dependent on the synthesizer you are using, (I.E. the "ser=" option is not valid for the Doubletalk PC, and the "port=" option is not valid for the Braille 'N Speak, for example). These options can also be given in any order after "speakup=", or skipped altogether, though the "synth=" option is required of course. Notice that there has been no mention of speakup's "start=" option. This is because when the module for the synthesizer you chose is loaded, "start=1" is automatically passed to it. Please note of course that the "boot" prompt itself will not speak, since the kernel, and therefore speakup aren't loaded yet.
Boot prompt examples with recent versions
Here are a couple of examples demonstrating how to invoke speakup at the SystemRescueCD boot prompt.
1. To start speakup with the Doubletalk PC, using the US keymap, you'd type the following at the boot prompt: "rescuecd_us speakup=synth=dtlk"
2. To start speakup with the Doubletalk PC, and tell it to be quiet until you press a key, you'd type the following: "rescuecd_us speakup=synth=dtlk,quiet=1"
3. To start speakup with a Braille 'N Speak connected to ttyS1, you'd type the following: "rescuecd_us speakup=synth=bns,ser=1"
4. To start speakup with a Braille 'N Speak connected to ttyS1, also telling speakup to remain quiet until you press a key, you'd type: "rescuecd_us speakup=synth=bns,ser=1,quiet=1"
Speakup Errata in SystemRescueCD 1.1.0-1.1.1
Thanks to Luke for reporting the following. This problem is fixed as of SystemRescueCD 1.1.2. The currently downloadable version of SystemRescueCD (systemrescuecd-x86-1.1.0.iso), appears to be using the version of speakup which contains the buffering or flush bug in the DEC Express driver, which I reported to speakup in, I believe, June, and which was fixed in git soon after.
At the least, using a DEC Express, I experience intolerable (if trying to do much reading) delays in using screen review functions, exactly as was the case with that particular bug.
Update1: I just booted SystemRescueCd. Responsiveness was fine, until after the boot messages said "entering runlevel 3". I'll have to boot again to see if I can tell what message after that appears about the time the slowdown starts, but it is very soon after the entry into runlevel 3.
Screen review commands now have about a 0.75 second delay. During initial boot they were immediate.
Update2: I have just discovered, that adjusting /sys/module/speakup/parameters/delay_time to a value of about 100 (lowest), nearly completely solves this problem.
That makes me wonder if the bug is not the one I thought it was, even though the symptoms are the same. Adjusting the delay_time certainly didn't solve it when it was the DEC driver bug, so maybe it is not that this time.
Status of Speakup in the latest versions of SystemRescueCd
As stated above, the dectalk-related problem in SystemRescueCd 1.1.0 and 1.1.1 has been fixed as of SystemRescueCd 1.1.2. Thanks to Luke for reporting this problem, and for testing, to make sure the fix works as expected.
Booting with Speakup in SystemRescueCD 0.3.7 and Earlier
In order to boot with speakup, you will need to specify the nokeymap option (to use the speakup keymap), and the parameters speakup_synth=xxx speakup_quiet=1, where xxx is the keyword for your synthesizer. The speakup_synth parameter tells speakup which synthesizer is to be used, and the speakup_quiet parameter tells speakup to not speak when it loads, until the time a key is pressed. This parameter is needed because speakup loads before keyboard support, which means that you will have no way to shut speakup up right after it loads, until the keyboard support is loaded.
Please note that silencing speakup at boot is no longer required in SystemRescueCD 1.1.0-later. A list of synthesizers supported by speakup, along with their keywords, as well as information on how to use speakup itself, can be found in the speakup user's guide, available at http://www.linux-speakup.org/spkguide.txt. Remember that speakup will not speak, until you press a key. The keyboard support should be available 15 seconds or so after SystemRescueCD starts booting. If you think you've waited long enough after hitting enter to start booting the SystemRescueCD, you may press numpad-8 to read the current line, and speakup should read the current line, along with additional text displayed on the screen from here on, until you shut it up again with numpad-enter. Please note of course that the "boot" prompt itself will not speak, since the kernel, and therefore speakup aren't loaded yet.