0. C-SLang: What’s new in 2.0?. Error!
Bookmark not defined.
1. C-SLang: Executive Summary. Error!
Bookmark not defined.
1.1 What is it for?. Error! Bookmark not
defined.
1.1.1 Off-board diagnostics. Error! Bookmark not
defined.
1.1.2 On-board diagnostics. Error! Bookmark not
defined.
1.1.3 Manufacturing supportError! Bookmark not
defined.
1.1.4 Quality assurance. Error! Bookmark not
defined.
1.2 What does C-SLang consist of?. Error! Bookmark not
defined.
1.3 What makes C-SLang different?. Error! Bookmark not
defined.
2. Analysis and Motivation. Error!
Bookmark not defined.
2.1 Some Examples. Error! Bookmark not
defined.
2.1.1 Event-driven software. Error! Bookmark not
defined.
2.1.2 Downloadable code. Error! Bookmark not
defined.
2.2 Problem Analysis. Error! Bookmark not
defined.
2.2.1 Code generation issues. Error! Bookmark not
defined.
2.2.2 Data access. Error! Bookmark not
defined.
2.3 C-SLang Design Goals. Error! Bookmark not
defined.
3. The C-SLang Solution. Error!
Bookmark not defined.
3.1 Host Language. Error! Bookmark not
defined.
3.2 C-SLang Data Types and Address
Spaces. Error! Bookmark not
defined.
3.3 Instruction Set Outline. Error! Bookmark not
defined.
3.4 C-SLang Virtual Machine. Error! Bookmark not
defined.
3.5 C-SLang Syntax. Error! Bookmark not
defined.
3.5.1 ScriptError!
Bookmark not defined.
3.5.2 Functions. Error!
Bookmark not defined.
3.5.3 Function Registration. Error! Bookmark not
defined.
3.5.4 Comments and Whitespaces. Error! Bookmark not
defined.
3.5.5 Symbolic Names and Other Macros. Error! Bookmark not
defined.
4. Using C-SLang. Error!
Bookmark not defined.
4.1 C-SLang Script Representations. Error! Bookmark not
defined.
4.1.1 Source, Bytecode and Bytecode
Size in Compiled FormatError!
Bookmark not defined.
4.1.2 Exporting a C-SLang Script
Bytecode to Portable FormatError!
Bookmark not defined.
4.2 Running C-SLang on a Virtual
Machine. Error! Bookmark not
defined.
4.2.1 Initializing a SVIRM... Error! Bookmark not
defined.
4.2.1.1 SVIRM-related data types. Error! Bookmark not
defined.
4.2.1.2 SVIRM initialization functions. Error! Bookmark not defined.
4.2.2 Running C-SLang scripts. Error! Bookmark not
defined.
4.3 Debug Interface. Error! Bookmark not defined.
4.3.1 Single-Step Execution. Error! Bookmark not
defined.
4.3.2 Breakpoints. Error! Bookmark not defined.
4.4 Completion Codes. Error! Bookmark not
defined.
5. Examples of C-SLang Scripts. Error!
Bookmark not defined.
5.1 (sample1.c) User macros. Error! Bookmark not
defined.
5.2 (sample2.c) A string problem.. Error! Bookmark not
defined.
5.3 (sample3.c) A simplified SAE J1978
message response. Error! Bookmark not
defined.
6. Instruction Set Reference. Error!
Bookmark not defined.
6.1 GeneralError!
Bookmark not defined.
6.2 Address Spaces and Arithmetic
Types of Operands. Error! Bookmark not
defined.
6.3 Move Class Instructions. Error! Bookmark not
defined.
6.3.1 Move, MoveIError! Bookmark not
defined.
6.3.2 LoadA, LoadAI, LoadX, LoadXIError! Bookmark not
defined.
6.3.3 StoreA, StoreAI, StoreX, StoreXIError! Bookmark not
defined.
6.3.4 MoveAX, MoveXA.. Error! Bookmark not
defined.
6.3.5 StoreAExtError!
Bookmark not defined.
6.4 Arithmetic and Logic Class
Instructions. Error! Bookmark not
defined.
6.4.1 Instructions with Opcodes without
endings. Error! Bookmark not
defined.
6.4.2 Instructions with Opcodes with
endings. Error! Bookmark not
defined.
6.5 Control Class Instructions. Error! Bookmark not
defined.
6.5.1 CallError!
Bookmark not defined.
6.5.2 RetError!
Bookmark not defined.
6.5.3 Jump. Error!
Bookmark not defined.
6.6 Miscellaneous Class Instructions. Error! Bookmark not
defined.
6.6.1 Loop. Error!
Bookmark not defined.
6.6.2 EndLoop. Error!
Bookmark not defined.
6.6.3 Repeat, RepeatA, RepeatX.. Error! Bookmark not
defined.
6.6.4 CheckListError!
Bookmark not defined.
6.6.5 ComputedCall and ComputedJump. Error! Bookmark not
defined.
6.6.6 ClearA.. Error!
Bookmark not defined.
6.6.7 ClearX.. Error!
Bookmark not defined.
6.6.8 Comp1 and Comp2. Error! Bookmark not
defined.
6.6.9 ExchangeAX.. Error! Bookmark not defined.
6.6.10 MulDiv. Error!
Bookmark not defined.
7. Frequently Asked Questions. Error!
Bookmark not defined.
7.1 My embedded application does not
use C runtime library. Can I still use C-SLang?. Error!
Bookmark not defined.
7.2 How many different scripts can run
simultaneously?. Error! Bookmark not
defined.
7.3 My operating environment allows
pre-emptive and cooperative tasks. How do I schedule runs of C-SLang scripts? Error! Bookmark not
defined.
7.4 Do I need separate control stacks
for different scripts?. Error! Bookmark not
defined.
7.5 How do I debug a C-SLang script?. Error! Bookmark not
defined.