core/docs/console_options.pod
author Tom Sutcliffe <thomas.sutcliffe@accenture.com>
Sun, 17 Oct 2010 18:43:12 +0100
changeset 86 849a0b46c767
parent 0 7f656887cf89
permissions -rw-r--r--
Fixed lots of issues with installing a low-caps version of fshell from SIS file. * Fixed issue in CCommandFactory whereby some APIs like GetCommandInfoL could trigger allocations on the wrong heap or signals to the wrong thread. The symptoms were often seen as a crash in the which_00 thread when running ciftest. * Lots of build fixes for when FSHELL_PROTECTED_UIDS isn't defined and when all capabilities aren't available. * Added new platform.mmh macro FSHELL_OPEN_SIGNED. * Open signing of fshell SIS files is now supported for production S60 handsets. Build fshell with the FSHELL_OPEN_SIGNED macro defined (and without defining FSHELL_CAP_ALL or FSHELL_PROTECTED_UIDS) in your platform.mmh and submit \epoc32\fshell\fshell.unsigned.sis to https://www.symbiansigned.com/app/page/public/openSignedOnline.do . The following commands are not available when using Open Signing due to Platform Security restrictions: fdb; kerninfo; chunkinfo; svrinfo; objinfo; sudo; fsck; localdrive; ramdefrag; readmem; reboot; setcritical; setpriority. Others such as chkdeps, e32header, ps, and fshell itself will run but in a restricted capacity (for example, fshell will no longer allow you to modify files in the \sys\bin directory). * Removed commands objinfo, svrinfo, chunkinfo, readmem, fsck completely when memory access isn't present - previously they would still appear in the help but would give an error if you tried to run them.

# console_options.pod
#
# Copyright (c) 2008-2010 Accenture. All rights reserved.
# This component and the accompanying materials are made available
# under the terms of the "Eclipse Public License v1.0"
# which accompanies this distribution, and is available
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
#
# Initial Contributors:
# Accenture - Initial contribution
#

__END__

=head1 Console Options

The way in which F<fshell> is initially started depends on the console implementation that it is using. Ordinarly, the choice of console implementation is something that the F<fshell> maintainers take care of independently for each of the supported platforms. However, the choice generally boils down to:

=over 5

=item * econs.dll

This is the console implementation for the text window server, generally only used for minimal base-port all ROMs and the early stages of product bring up.

=item * econseik.dll

This is the console implementation for the graphical window server. It is generally only usable on devices that have a full keyboard, and so is rarely the default console implementation used by the F<fshell>. If F<fshell> has been configured to use this console implementation, it should be possible to start using it selecting its icon from the application launcher. You'll then be presented with a full screen window and a command prompt that can be interacted with using the device's keyboard.

=item * L<rcons.dll|rcons>

This is a console implementation that connects via TCP to a Win32 executable (called L<rcons.exe|rcons.exe>) that hosts console windows remotely. The TCP transport is normally Symbian's PC Connectivity transport, mRouter. It is therefore necessary to have the correct connectivity suite for the handset being used to run F<fshell> installed and connected (normally via USB, but Bluetooth is also possible). It is also necessary to run L<rcons.exe|rcons.exe> on the PC hosting the connectivity suite (this file can be found in C<\epoc32\tools>). Having done this, launching F<fshell> from the application launcher should result in a new Win32 window appearing on the PC with a command prompt in it.

Note, L<rcons.dll|rcons.dll> is normally the console implementation of choice provided the device in question has a working PC connectivity suite. This is because it supports multiple console windows without any special configuration. However, L<rcons.dll|rcons.dll> does require that the device is able to make an active TCP connection to the PC. While this works fine with mRouter, other TCP transports may be blocked by firewalling software running on the host PC.

=item * L<vt100cons.dll|vt100cons>

This is a console implementation that will communicate with a VT100 compatible terminal (or terminal emulator such as HyperTerminal) via a serial connection. There are variants that work over TCP connnections (vt100tcpcons.dll), Bluetooth (vt100btcons.dll) and USB (vt100usbcons.dll). On platforms that support it, the Bluetooth or USB consoles can be started from the application launcher, whereupon they will listen for an incoming connection to the appropriate Bluetooth serial port or USB ACM channel. The console supports basic VT100, colour, some VT220 key escapes, and binary mode.

=item * win32cons.dll

A specialised console for running the WINSCW fshell directly in a DOS box. Launch \epoc32\tools\fshell.bat to start a headless, gui-less epoc.exe emulator connected to an fshell session in the DOS box. Note this console is only for talking to the emulator, it cannot be used to talk to a device.

=item * Guicons

On platforms that support it, guicons is supplied as an alternative to econseik. This can be launched from the application launcher, and integrates better with the UI layer than econseik.

=back

=head1 See Also

L<fshell|fshell>

L<rcons|rcons>

L<vt100cons|vt100cons>

=head1 Copyright

Copyright (c) 2008-2010 Accenture. All rights reserved.

=cut