1 (*
2  * The contents of this file are subject to the Mozilla Public License
3  * Version 1.1 (the "License"); you may not use this file except in
4  * compliance with the License. You may obtain a copy of the License at
5  * http://www.mozilla.org/MPL/
6  *
7  * Software distributed under the License is distributed on an "AS IS"
8  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
9  * License for the specific language governing rights and limitations
10  * under the License.
11  *
12  * The Initial Developer of this code is John Hansen.
13  * Portions created by John Hansen are Copyright (C) 2009 John Hansen.
14  * All Rights Reserved.
15  *
16  *)
17 unit uLocalizedStrings;
18 
19 interface
20 
21 // BricxCC unit
22 resourcestring
23   S_RESET = 'reload defaults from Default directory';
24   S_COM   = 'use the named port for this instance (COM1..COMnnn, usb)';
25   S_RCX   = 'use brick type N for this instance';
26   S_AUTO  = 'auto connect using default or specified port and type';
27   S_NONE  = 'do not connect to brick at startup';
28   S_POS   = 'position windows using values in INI file';
29   S_HELP  = 'display this message before starting up';
30   S_NT    = 'use compiler timeout specified for this instance (in seconds)';
31   S_DEBUG = 'display debug message when launching compiler';
32   S_USERPATH = 'set the path for user configuration files';
33 
34 // MainUnit unit
35 resourcestring
36   sNoRCX           = 'No connection to the programmable brick. Certain options will be unavailable.';
37   sNoPort          = 'no port';
38   sNoRobot         = 'no robot';
39   sHideCodeError   = 'Hide Code/Error|Warning Listing';
40   sShowCodeError   = 'Show Code/Error|Warning Listing';
41   sFirmDwnldFailed = 'Firmware download failed. Put the RCX closer and try again.';
42   sWrongNum        = 'wrong download number';
43   sWarnCancelFD    = 'Firmware download cancelled.';
44   sBrickCommError  = 'Unable to communicate with your brick';
45   sRecording       = 'Recording';
46   sEnterData       = 'Enter data';
47   sEnterRunParams  = 'Enter run parameters';
48   SFilterAllFiles  = 'All files|*.*|';
49   sProgramLocked   = 'Program is locked.';
50   sClearMemConfirm = 'Are you sure you want to clear the brick''s memory?';
51   sBreakAll        = 'Break all';
52   sContinue        = 'Continue';
53   sFileMenu        = '&File';
54   sEditMenu        = '&Edit';
55   sCopySpecialMenu = 'Copy &Special';
56   sSearchMenu      = '&Search';
57   sViewMenu        = '&View';
58   sProjectManager  = '&Project Manager';
59   sCodeExplorer    = 'Code E&xplorer';
60   sStatusBar       = '&Status bar';
61   sTemplates       = 'T&emplates';
62   sHideErrors      = '&Hide Errors';
63   sToolWindows     = '&Tool Windows';
64   sMacroManager    = '&Macro Manager';
65   spbForthConsole  = 'pbForth Console';
66   sWindowList      = '&Window List';
67   sToolbarsMenu    = 'Tool&bars';
68   sCompileMenu     = '&Compile';
69   sProgramNumberMenu = '&Program Number';
70   sProgram         = 'Program';
71   sToolsMenu       = '&Tools';
72   sbrickOSMenu     = '&brickOS';
73   sSetLNPAddress   = '&Set LNP Address...';
74   sLNPAddress      = 'LNP &Address';
75   sAddress         = 'Address';
76   sLNPPort         = 'LNP &Port';
77   sPort            = 'Port';
78   sWindowMenu      = '&Window';
79   sTileHorizontal  = 'Tile &Horizontal';
80   sTileVertical    = 'Tile &Vertical';
81   sCascade         = '&Cascade';
82   sArrangeIcons    = '&Arrange Icons';
83   sPositionsMenu   = '&Positions';
84   sSave            = 'Save';
85   sLoad            = 'Load';
86   sHelpMenu        = '&Help';
87   sIndex           = '&Index';
88   sNQCGuide        = '&NQC Guide';
89   sHowToUseHelp    = '&How to Use Help';
90   sWebPage         = '&Web page';
91   sNextWindow      = '&Next window';
92   sGuidePDFs       = 'Guide PDFs';
93   sTutorialPDFs    = 'Tutorial PDFs';
94 
95 // Editor unit
96 resourcestring
97   S_Overwrite      = 'Overwrite';
98   S_Insert         = 'Insert';
99   S_ReadOnly       = 'ReadOnly';
100   S_FileChanged    = 'File %s has been modified. Save changes?';
101   S_Modified       = 'Modified';
102   sErrors          = 'Errors';
103   sFullErrors      = 'Full errors in';
104   sCodeListing     = 'Code listing of';
105   sCompileSuccess  = 'Program compiled successfully.';
106   sCompileErrors   = 'Errors found on program compile.';
107   sCompileDownloadSuccess  = 'Program compiled and downloaded successfully.';
108   sCompileDownloadErrors   = 'Errors found on program compile and download.';
109   sUntitled         = 'Untitled';
110   sFindDeclaration  = 'Find Dec&laration';
111   sClosePage        = '&Close Page';
112   sOpenFileAtCursor = 'Open &File at Cursor';
113   sTopicSearch      = 'Topic &Search';
114   sUndo             = 'U&ndo';
115   sRedo             = '&Redo';
116   sCut              = 'C&ut';
117   sCopy             = 'Co&py';
118   sPaste            = 'P&aste';
119   sDelete           = 'D&elete';
120   sSelectAll        = 'Selec&t All';
121   sToggleBookmarksMenu = '&Toggle Bookmarks';
122   sBookmark            = 'Bookmark';
123   sGotoBookmarksMenu   = '&Goto Bookmarks';
124   sViewExplorer     = 'View E&xplorer';
125   sToggleBreakpoint = 'Toggle Breakpoint';
126 
127 
128 // CodeUnit unit
129 resourcestring
130   sFind         = '&Find';
131   sFindNext     = 'Find &Next';
132   sFindPrevious = 'Find &Previous';
133   sGotoLine     = '&Goto Line';
134   sStayOnTop    = 'Stay on &top';
135 
136 // GotoLine unit
137 resourcestring
138   sGotoError = 'Line must be between 1 and %d.';
139 
140 // GX_ProcedureList
141 resourcestring
142   SAllString  = '<All>';
143   SNoneString = '<None>';
144   SInvalidIndex = 'Invalid index number';
145   SParseStatistics = 'Procedures processed in %g seconds';
146 
147 // SearchRCX unit
148 resourcestring
149   S_CANNOT_FIND_RCX = 'Cannot find brick. Switch it on or move it closer and press OK.';
150   S_SEARCHING_NXT   = 'Searching for NXTs';
151   S_SEARCHING_BRICK = 'Searching for a brick';
152 
153 // Translate unit
154 resourcestring
155   S_TRANSLATE = 'Translating an old NQC program into NQC 2.0. ' +
156                 'This might not be completely correct. ' +
157                 'Please check afterwards. Do you want to continue?';
158 
159 // uCodeExplorer unit
160 resourcestring
161   sUnableToParseFile = 'Unable to parse current file';
162 
163 
164 // uParseCommon unit + others
165 resourcestring
166   SImplementationNotFound = 'Implementation section not found (parser error?)';
167   sUnknown      = 'Unknown';
168   sFunction     = 'Function';
169   sProcedure    = 'Procedure';
170   sConstructor  = 'Constructor';
171   sDestructor   = 'Destructor';
172   sClassFunc    = 'Class Func';
173   sClassProc    = 'Class Proc';
174   sTask         = 'Task';
175   sSubroutine   = 'Subroutine';
176   sMacros       = 'Macros';
177   sFunctions    = 'Functions';
178   sSubroutines  = 'Subroutines';
179   sTasks        = 'Tasks';
180   sProcedures   = 'Procedures';
181   sConstructors = 'Constructors';
182   sDestructors  = 'Destructors';
183   sExploring    = 'Exploring';
184 
185 // uMacroForm unit
186 resourcestring
187   sConfirmDeleteMM = 'Delete selected macro?';
188 
189 // About unit
190 resourcestring
191   sVersion = 'Version';
192   sBuild   = 'Build';
193 
194 
195 // dlgConfirmReplace
196 resourcestring
197   SAskReplaceText = 'Replace this occurence of "%s"?';
198 
199 // DTestPrintPreview
200 resourcestring
201   sPageLabel    = ' Page: ';
202   sPrintCmdHint = 'Print (%0:s)|Print the document on %0:s';
203   sWholePage    = 'Whole page';
204   sPageWidth    = 'Page width';
205 
206 // Construct unit
207 resourcestring
208   sExpandAll   = 'Expand All';
209   sCollapseAll = 'Collapse All';
210   sDoubleClickToInsert = 'Double Click to Insert';
211 
212 // ExecProgram unit
213 resourcestring
214   sTimeout = 'Program execution timed out.  Try increasing the timeout value.';
215   sAborted = 'Program execution aborted.';
216   sUnableToExecute = 'Unable to create process:' + #10 + '%s' + #10#10 +
217      'Make sure %s is in a directory on the system path ' + #10 +
218      'or in the same directory as the controlling program' + #10 + '(%s).';
219 
220 // Preferences unit
221 resourcestring
222   S_ChangeMacroCaption    = 'Changing a Macro';
223   S_ChangeMacroPrompt     = 'Change Macro %s:';
224   S_ChangeTemplateCaption = 'Changing a Template';
225   S_ChangeTemplatePrompt  = 'Change the Template:';
226   S_InsertTemplateCaption = 'Inserting a Template';
227   S_InsertTemplatePrompt  = 'Type the template you want to insert:';
228   S_KeystrokeCaption      = 'Keystroke Editor';
229   S_CodeTemplatesCaption  = 'Code Templates';
230   S_ConfirmAPIDelete      = 'Are you sure you want to delete this item?';
231 
232 // Controller unit
233 resourcestring
234   sRaw         = 'Raw';
235   sBoolean     = 'Boolean';
236   sTransCount  = 'Trans Count';
237   sPeriodCount = 'Period Count';
238   sPercent     = 'Percent';
239   sCelsius     = 'Celsius';
240   sFahrenheit  = 'Fahrenheit';
241   sAngle       = 'Angle';
242   sNone        = 'None';
243   sSwitch      = 'Switch';
244   sTemperature = 'Temperature';
245   sLight       = 'Reflection';
246   sLightActiv  = 'Light Active';
247   sLightInact  = 'Light Inactive';
248   sSoundDB     = 'Sound DB';
249   sSoundDBA    = 'Sound DBA';
250   sCustom      = 'Custom';
251   sLowspeed    = 'Lowspeed';
252   sLowspeed9v  = 'Lowspeed 9V';
253   sHighspeed   = 'Highspeed';
254   sColorFull   = 'Color Full';
255   sColorRed    = 'Color Red';
256   sColorGreen  = 'Color Green';
257   sColorBlue   = 'Color Blue';
258   sColorNone   = 'Color None';
259   sScoutSourceError = 'Scout only supports variable and constant sources';
260   sNonSpybotSrcError = 'Only Spybots support sources past Indirect';
261 
262 // Diagnose unit
263 resourcestring
264   sRCXDead = 'Brick is NOT alive';
265   sRCXAlive = 'Brick is alive';
266   sVariable = 'Variable ';
267   sWatch    = 'Watch';
268   sInput1   = 'Input 1';
269   sInput2   = 'Input 2';
270   sInput3   = 'Input 3';
271   sOutputA  = 'Output A';
272   sOutputB  = 'Output B';
273   sOutputC  = 'Output C';
274   sUserSelect = 'User Select';
275   sExceptions = 'Exceptions';
276 
277 // EditCodeTemplate unit
278 resourcestring
279   sNewTemplate = 'New Code Template';
280   sEditTemplate = 'Edit Code Template';
281 
282 // JoystickUnit unit
283 resourcestring
284   sDriveMotor = 'Drive Motor';
285   sSteerMotor = 'Steer Motor';
286   sLeftMotor  = 'Left Motor';
287   sRightMotor = 'Right Motor';
288 
289 // MemoryUnit unit
290 resourcestring
291   sDownloadMemMapFailed = 'Memory map download failed!';
292   sSubroutinePointers   = 'Subroutine Pointers';
293   sTaskPointers         = 'Task Pointers';
294   sSoundPointers        = 'Sound Pointers';
295   sAnimationPointers    = 'Animation Pointers';
296   sDataPointer          = 'Data Pointer:            ';
297   sTopOfMemory          = 'Top of Memory:           ';
298   sFreeMemLeft          = 'Free Memory Left:        ';
299   sTotalUsed            = 'Total Memory Used:       ';
300   sDatalogStart         = 'Datalog Start Pointer:   ';
301   sDatalogCurrent       = 'Datalog Current Pointer: ';
302 
303 // Transdlg unit
304 resourcestring
305   sColMacro = 'Cursor column in active editor';
306   sRowMacro = 'Cursor row in active editor';
307   sCurTokenMacro = 'Word at cursor in active editor';
308   sPathMacro = 'Directory portion of parameter';
309   sNameMacro = 'File name of parameter';
310   sNameOnlyMacro = 'File name of parameter without extension';
311   sExtMacro = 'File extension of parameter';
312   sEdNameMacro = 'Expanded file name of active editor';
313   sPromptMacro = 'Prompt for information';
314   sSaveMacro = 'Save file in active editor';
315   sSaveAllMacro = 'Save all modified files';
316   sPortMacro = 'Current port';
317   sTargetMacro = 'Current target';
318 
319 // Transfer unit
320 resourcestring
321   sConfirm = 'Delete the item entitled %s?';
322 
323 // uCmdLineUtils unit
324 resourcestring
325   UsageErrorMessage = 'Use "%s -help" for more information.';
326   VersionString = ' version ';
327   BuiltString = ' built ';
328 
329 // uEEPROM unit
330 resourcestring
331   sEEPROMLoadError = 'Error loading EEPROM data';
332   sConfirmEEPROMWrite = 'Are you sure you want to write data to the brick?';
333 
334 // uExplorerOptions unit
335 resourcestring
336   sHidden = 'Hidden';
337   sVisible = 'Visible';
338   sCollapsed = 'Collapsed';
339   sExpanded = 'Expanded';
340 
341 // uMacroLib unit
342 resourcestring
343   sMacroLibFormatError = 'Invalid macro library format';
344 
345 // uNewWatch unit
346 resourcestring
347   sWatchError = 'Cannot find the brick anymore';
348 
349 // uNXTExplorer unit
350 resourcestring
351   sConfirmDel     = 'Delete all the selected files?';
352   sConfirmDefrag  = 'Defragment the NXT filesystem.'#13#10 +
353     'This operation attempts to a) upload all files from the NXT ' +
354     'to your computer, b) erase the NXT flash memory, and c) download ' +
355     'all the files back to the NXT. It is possible that the defragment ' +
356     'operation may not complete successfully and files may be lost.'#13#10 +
357     'Do you want to go ahead with the defragmentation operation?';
358   sConfirmErase   = 'Erase all files on the NXT?';
359   sLowBattery     = 'Battery level is too low to complete this operation';
360   sDefragError    = 'Defragmentation failed!';
361   sDefragSuccess  = 'Defragmentation complete!';
362   sTooBig         = 'File size (%d) of "%s" is too large.';
363   sDownloadFailed = 'Download failed';
364   sExit           = 'E&xit';
365   sNXTViewStyleMenu = 'NXT View Style';
366   sPCViewStyleMenu  = 'PC View Style';
367   sAbout          = '&About';
368 
369 // uNXTImage unit
370 resourcestring
371   sBTResetConfirm   = 'Are you sure you want to reset Bluetooth to factory defaults?';
372   sBootSAMBAConfirm = 'Are you sure you want to boot the NXT in SAMBA mode?';
373   sUtilitiesMenu  = 'Utilities';
374   sSetNXTName     = 'Set NXT Name';
375   sBootSAMBA      = 'Boot NXT into SAMBA mode';
376   sResetBluetooth = 'Reset Bluetooth to factory defaults';
377   sRefreshRate    = '&Refresh Rate';
378   sScale          = 'Sca&le';
379   sDisplay        = '&Display';
380   sNormal         = '&Normal';
381   sPopup          = '&Popup';
382   sPlayClicks     = 'Play Clicks';
383 
384 // uProjectManager unit
385 resourcestring
386   sRemoveConfirm = 'Remove the selected file(s) from the project?';
387 
388 // uSetLNPAddress unit
389 resourcestring
390   sFailedToSetLNPAddr   = 'Failed to set LNP address.'#13#10 +
391     'Check the current address setting.';
392   sSuccessfulSetLNPAddr = 'LNP Address successfully set to %d.';
393 
394 // uWav2RsoCvt
395 resourcestring
396   sErrRiffWaveFmt = 'Error processing %s: wave file is not RIFF/WAVE format';
397   sErrPCMFmt      = 'Error processing %s: wave files must be in PCM, MS ADPCM, or IMA ADPCM format';
398   sErr64kLimit    = 'Error processing %s: wave file exceeds 64k maximum size';
399   sSuccess        = 'Success: %s';
400 
401 // common to multiple compilers
402 resourcestring
403   sException       = 'Exception';
404   sProgramError    = '%d errors during compilation';
405   sInvalidConstExpr        = 'Invalid constant expression';
406   sUnmatchedCloseParen     = 'Unmatched close parenthesis';
407   sParserError             = 'parser error';
408 
409 // uRPGComp
410 resourcestring
411   sNothingAfterEnd = 'Commands are not allowed after EndLoop or EndStop';
412   sUnknownCommand  = 'Unknown RPG command';
413   sTooManyCommands = 'Too many RPG commands in program';
414 
415 // uRICComp
416 resourcestring
417   sInvalidArgument         = 'invalid argument: %d';
418   sInvalidVarMapIndex      = 'invalid varmap index: %d';
419   sInvalidCommandArgument  = 'Invalid command argument';
420   sSpriteLengthError       = 'sprite command must have rows with a length > 0';
421   sInvalidMapSyntax        = 'Invalid map element function syntax';
422   sInvalidPolygonSyntax    = 'Invalid polygon point syntax';
423   sVarMapCountError        = 'varmap command must have at least two map elements';
424   sPolygonCountError       = 'polygon command must have at least three points';
425   sStringNotBinary         = 'String is not a valid binary number: %s';
426   sInvalidHexLength        = 'Invalid length of hex string: %d';
427   sUnableToFindImage       = 'Unable to find image file "%s"';
428   sEllipseRequires127      = 'The ellipse command requires the enhanced NBC/NXC firmware, v1.27 or greater';
429   sPolygonRequires127      = 'The polygon command requires the enhanced NBC/NXC firmware, v1.27 or greater';
430 
431 // uPreprocess unit
432 resourcestring
433   sInvalidPreprocDirective  = 'Invalid preprocessor directive';
434   sImportRICNotFound        = 'Unable to find RIC import file: "%s"';
435   sImportRICMissingQuotes   = '#importric directive requires a filename (e.g., #importric "foo.ric")';
436   sImportRICInvalid         = '#importric directive filename must end in ".ric"';
437   sDownloadNotFound         = 'Unable to find download file: "%s"';
438   sDownloadMissingQuotes    = '#download directive requires a filename (e.g., #download "foo.ric")';
439   sIncludeNotFound          = 'Unable to find include file: "%s"';
440   sIncludeMissingQuotes     = '#include directive requires a filename (e.g., #include "foo.h")';
441   sMacroMismatch            = 'Preprocessor macro function does not match instance (%s)';
442   sUnmatchedDirective       = 'Unmatched preprocessor directive';
443   sInvalidPreprocExpression = 'Invalid preprocessor expression : %s';
444   sInvalidCharConstant      = 'Invalid char constant';
445   sMaxRecursionDepthError   = 'Max recursion depth (%d) exceeded';
446   sIncludePath              = 'Include path';
447   sSearchingForFile         = 'Searching for file';
448   sFoundFile                = 'Found file';
449   sProcessingDownload       = 'Processing download';
450   sProcessingImport         = 'Processing import';
451   sProcessingInclude        = 'Processing include';
452 
453 // uNXTClasses
454 resourcestring
455   sInvalidStatement    = 'Unknown or invalid statement';
456   sInvalidLine         = 'Line type "%s" is not valid while in the "%s" state';
457   sInvalidNumArgs      = 'Invalid number of arguments: %d expected, %d found';
458   sInvalidNumArgsVar   = 'Invalid number of arguments: at least %d expected, %d found';
459   sInvalidNumArgsOdd   = 'Invalid number of arguments: argument count must be odd';
460   sInvalidCompareCode  = 'Invalid comparison code: %s';
461   sBadConstExpression  = 'Invalid constant expression: %s';
462   sConstOutOfRange     = '%d is outside the valid range [%d,%d]';
463   sInvalidOpcode       = 'Invalid opcode: %s';
464   sDuplicateLabel      = 'Duplicate label (%s)';
465   sDuplicateDSEntry    = 'Duplicate variable declaration (%s)';
466   sDuplicateType       = 'Duplicate type declaration (%s)';
467   sInvalidVarDecl      = 'Invalid variable declaration (%s)';
468   sInvalidVarArg       = 'Invalid variable argument: %s';
469   sInvalidMutexArg     = 'Invalid mutex argument: %s';
470   sInvalidClusterArg   = 'Invalid struct argument: %s';
471   sInvalidArrayArg     = 'Invalid array argument: %s';
472   sInvalidScalarArg    = 'Invalid scalar argument: %s';
473   sInvalidStringArg    = 'Invalid string argument: %s';
474   sInvalidLabelArg     = 'Invalid label argument: %s';
475   sInvalidClumpArg     = 'Invalid thread argument: %s';
476   sReturnNotInSub      = 'The return opcode can only be used within a subroutine';
477   sNoReturnAtEndOfSub  = 'The last operation in a subroutine must be a return';
478   sCompCheckFailed     = 'compchk failed.  %d is not %s %d.';
479   sCompCheckTypFailed  = 'compchktype failed.  %s is not %s.';
480   sInvalidCompCheck    = 'invalid compchk operation';
481   sInvalidCompCheckTyp = 'invalid compchktype operation';
482   sUnsafeDivision      = 'Dividing a signed number by an unsigned number is unsafe';
483   sUnusedVar           = 'Unused variable: %s.  Enable optimization with -Z1 to remove.';
484   sInvalidSetStatement = 'The set opcode cannot be used with float variables';
485   sMainUndefined       = 'The main thread is not explicitly named';
486   sNoNegShifts         = 'Negative shifts are not supported';
487   sNBCFinalizeDepends  = 'Finalizing dependencies';
488   sNBCOptimizeLevel    = 'Optimizing at level %d';
489   sNBCBuildRefs        = 'Build codespace references';
490   sNBCOptMutexes       = 'Optimize mutexes';
491   sNBCCompactCode      = 'Compact the codespace';
492   sNBCRemoveLabels     = 'Remove unused labels';
493   sNBCRunCodeOpts      = 'Run codespace optimizations';
494   sNBCCompactAfterOpt  = 'Compact the codespace after optimizations';
495   sNBCCompactData      = 'Compact the dataspace';
496   sNBCSortDataspace    = 'Sort the dataspace';
497   sNBCGenerateRawDS    = 'Generate raw dataspace data';
498   sNBCFillCodeArrays   = 'Fill clump and codespace arrays';
499   sNBCUpdateHeader     = 'Update executable file header';
500   sNBCWriteHeader      = 'Write file header to executable';
501   sNBCWriteDataspace   = 'Write dataspace to executable';
502   sNBCWriteClumpData   = 'Write clump data to executable';
503   sNBCWriteCodespace   = 'Write code to executable';
504   sNBCWriteOptSource   = 'Write optimized source to compiler output';
505   sNBCFinished         = 'Finished';
506   sNBCCompFinished     = 'Finished compiling NBC source code';
507   sNBCLoadSystemFiles  = 'Loading NBC system files';
508   sNBCPreprocess       = 'Running NBC Preprocessor';
509   sNBCCompilingSource  = 'Compiling NBC source code';
510   sNBCOptClump         = 'Optimizing clump: %s';
511   sNBCCompBegin        = 'NBC compilation begins';
512 
513 // uNXCComp unit
514 resourcestring
515   sTaskName                = 'Task name';
516   sVariableName            = 'Variable name';
517   sStringReturnValue       = 'String return value';
518   sInvalidAssignment       = 'Invalid assignment';
519   sDatatypesNotCompatible  = 'Datatypes are not compatible';
520   sInlineInvalid           = 'The inline keyword may only be used with functions';
521   sSafeCallInvalid         = 'The safecall keyword may only be used with functions';
522   sBadPrototype            = 'Prototypes without parameter names are not supported';
523   sMainMustBeTask          = 'main must be a task';
524   sUDTNotEqual             = 'User-defined types do not match';
525   sInvalidArrayDeclaration = 'Invalid array declaration';
526   sInvalidArrayInit        = 'Invalid array or struct initialization';
527   sUnknownUDT              = 'Unknown user-defined type';
528   sReturnInvalid           = 'return is invalid outside a subroutine';
529   sInvalidBreakContinue    = '%s is invalid outside of a loop';
530   sProtoAlreadyDefined     = 'Prototype already defined - "begin"';
531   sNotValidForPrototype    = 'Not valid for a prototype';
532   sMissingDataType         = 'Missing Data Type';
533   sDataTypesAlreadyDefined = 'Data types already defined in prototype';
534   sParameterList           = 'Parameter List';
535   sUnexpectedChar          = 'Unexpected character encountered';
536   sValidProgBlock          = 'Valid Program Block Statement';
537   sConstInitialization     = 'constant initialization';
538   sInitNotAllowed          = 'Initialization is not allowed for mutex variables';
539   sInvalidStringInit       = 'Invalid string initialization';
540   sConstLocArrNotSupported = 'Constant local arrays are not supported';
541   sUnknownAPICommand       = 'Unknown API command';
542   sDefaultInvalid          = 'default is invalid outside a switch statement';
543   sCaseInvalid             = 'case is invalid outside a switch statement';
544   sCaseDuplicateNotAllowed = 'duplicate case labels are not allowed';
545   sInvalidUseOfTaskName    = 'Invalid use of task name';
546   sInvalidArrayExpr        = 'Invalid array expression';
547   sRecursiveInlineError    = 'Calling an inline function from an inline function is not supported';
548   sNestedCallsError        = 'Nested calls to the same function are not supported.';
549   sRecursiveNotAllowed     = 'Recursive function calls are not supported';
550   sExpNotSupported         = 'Expressions are not supported for struct, array, or reference parameters';
551   sEnhancedFirmwareReqd    = 'Enhanced firmware is required for this operation';
552   sSymbolTableFull         = 'Symbol Table Full';
553   sInvalidArrayDim         = 'Invalid array dimensions - must be from 1 to 4';
554   sAssignTaskError         = 'Can not assign to a task or subroutine';
555   sArgMustBeTask           = 'Argument must be a task';
556   sInvalidReturnType       = 'Invalid return type';
557   sInvalidStringAssign     = 'Invalid string assignment';
558   sInvalidArrayIndex       = 'Invalid array index';
559   sFloatNotSupported       = 'float types are not supported at the specified firmware version';
560   sNoUnsignedFloat         = 'float types cannot be declared as unsigned';
561   sMainTaskNotFound        = 'No task named "main" exists';
562   sNXCGenerateTrailer      = 'NXC generate trailer';
563   sNXCProcessGlobals       = 'NXC processing global declarations';
564   sNXCProcedure            = 'NXC processing procedure block: %s';
565   sNXCFunction             = 'NXC processing function block: %s';
566   sNXCCompBegin            = 'NXC compilation begins';
567   sNXCPreprocess           = 'Running NXC preprocessor';
568   sNXCInitProgram          = 'NXC init program';
569   sNXCParseProg            = 'NXC parse program code';
570   sNXCCodeGenComplete      = 'NXC code generation finished';
571   sConstNotInline          = 'Only inline functions can correctly use non-reference constant parameters';
572   sInvalidFuncDecl         = 'Declaration syntax error';
573   sDefaultParamError       = 'Invalid parameter syntax with default values';
574   sInvalidFunctionCall     = 'Invalid function call';
575   sInvalidEnumDecl         = 'Invalid enum declaration';
576   sUnknownDatatype         = 'Unknown datatype';
577   sCompileTargets          = 'Compiling for firmware version %d, NBC/NXC enhanced = %s';
578   sCurrentFile             = 'Current file = "%s"';
579   sConstOrConstExpr        = 'constant or constant expression';
580   sNotAnAPIFunc            = '%s is not an API function';
581   sNotAnAPIStrFunc         = '%s is not an API string function';
582 
583 // uNBCCommon unit
584 resourcestring
585   sExpectedString          = '%s expected';
586   sDataType                = 'Data type';
587   sIdentifier              = 'Identifier';
588   sDirective               = 'Preprocessor directive';
589   sNumber                  = 'Number';
590   sHexNumber               = 'Hex number';
591   sCharLiteral             = 'Character literal';
592   sStringLiteral           = 'String literal';
593   sStringType              = 'string constant or variable of type string';
594   sByteArrayType           = 'byte array type';
595   sStringVarType           = 'string type';
596   sStructType              = 'struct type';
597   sMutexType               = 'mutex type';
598   sIntegerType             = 'integer type';
599   sNumericType             = 'numeric type';
600   sMathFactor              = 'Math Factor';
601   sArrayOfString           = 'array of string';
602   sArrayDatatype           = 'array data type';
603   sUndefinedIdentifier     = 'Undefined Identifier %s';
604   sDuplicateIdentifier     = 'Duplicate Identifier %s';
605   sTooManyArgs             = 'Too many arguments';
606   sTooFewArgs              = 'Too few arguments';
607   sTooFewParams            = 'Too few parameters';
608   sMaxParamCountExceeded   = 'Max param count exceeded';
609   sConstNotAllowed         = 'Constant not allowed on LHS of assignment';
610   sConstRequired           = 'A constant is required in this context';
611   sFuncParamDeclMismatch   = 'Function parameter declaration mismatch';
612 
613 // nbc.dpr
614 resourcestring
615   UsageSyntax    = 'Syntax: %s [options] filename [options]';
616   UsagePort      = '   -S=<portname>: specify port name (usb), brick resource name, or alias';
617   UsageDownload  = '   -d: download program';
618   UsageRunProg   = '   -r: download and run program';
619   UsageBinary    = '   -b: treat input file as a binary file (don''t compile it)';
620   UsageQuiet     = '   -q: quiet';
621   UsageNoSystem  = '   -n: prevent the system file from being included';
622   UsageDefine    = '   -D=<sym>[=<value>]: define macro <sym>';
623   UsageDecompile = '   -x: decompile program';
624   UsageOptimize  = '   -Z[1|2]: turn on compiler optimizations';
625   UsageMaxErrors = '   -ER=n: set maximum errors before aborting (0 == no limit)';
626   UsageMaxDepth  = '   -PD=n: set max preprocessor recursion depth (default == 10)';
627   UsageOutput    = '   -O=<outfile> : specify output file';
628   UsageErrors    = '   -E=<filename> : write compiler messages to <filename>';
629   UsageIncludes  = '   -I=<path>: search <path> for include files';
630   UsageNBCOutput = '   -nbc=<filename> : save NXC intermediate NBC code to <filename>';
631   UsageListing   = '   -L=<filename> : generate code listing to <filename>';
632   UsageSymbols   = '   -Y=<filename> : generate symbol table to <filename>';
633   UsageWarnings  = '   -w[-|+] : warnings off or on (default is on)';
634   UsageStatusMsg = '   -sm[-|+] : status messages off or on (default is on)';
635   UsageEnhanced  = '   -EF : enhanced firmware';
636   UsageSafecall  = '   -safecall: NXC will wrap all function calls in Acquire/Release';
637   UsageAPI       = '   -api: dump the API to stdout';
638   UsageFirmVer   = '   -v=n: set the targeted firmware version (default == 128, NXT 1.1 == 105)';
639   UsageHelp      = '   -help : display command line options';
640 
641 // uEditorExperts.pas
642 resourcestring
643   SNoTokens = 'No tokens found to align on.';
644   sEECommentName      = 'Comment Code';
645   sEEUncommentName    = 'Uncomment Code';
646   sEEAlignName        = 'Align Lines';
647   sEEPrevIdentName    = 'Previous Identifier';
648   sEENextIdentName    = 'Next Identifier';
649   sEEReverseName      = 'Reverse Statement';
650   sEEGrepSearchName   = 'Grep Search';
651   sEEGrepResultsName  = 'Grep Results';
652   sEECommentHelp      = '  This expert comments out a selected block of code. To ' +
653     'use it, select a block in the Delphi editor and activate this expert. ' + #13#10#13#10 +
654     '  You can configure this expert to use different comment styles.';
655   sEEUncommentHelp    = '  This expert uncomments a selected block of code.  To ' +
656     'use it, select a block in the IDE code editor and activate this expert.' + #13#10 +
657     '  Uncommenting is performed using the comment style that you selected for ' +
658     'the Comment Code editor expert.';
659   sEEAlignHelp        = '  This expert aligns the text of the selected lines at ' +
660     'the first occurrence of a chosen token in each line.  To use it, select a ' +
661     'block of code in the code editor and activate this expert.  You may find ' +
662     'this feature useful to align the right hand side of variable, field, or ' +
663     'constant declarations and other similar lists. ' + #13#10 +
664     '  There are two alignment modes.  In the "Align at rightmost token" mode, ' +
665     'the rightmost token found in the selected text becomes the column position ' +
666     'the other lines are aligned to.  In the "Align at first token" mode, the ' +
667     'first located token is used to determine the alignment column.  In this ' +
668     'second mode, any line whose token prefix is longer than the position of ' +
669     'the first token will not be modified. ' + #13#10 +
670     '  You can configure the list of tokens to align on as well as the minimum ' +
671     'number of space characters that must precede a token that is being aligned.';
672   sEEPrevIdentHelp    = '  This expert detects the identifier under the cursor ' +
673     'and allows you to quickly jump to the previous occurrence of that ' +
674     'identifier in the same file.';
675   sEENextIdentHelp    = '  This expert detects the identifier under the ' +
676     'cursor and allows you to quickly jump to the next occurrence of that ' +
677     'identifier in the same file.';
678   sEEReverseHelp      = '  This expert reverses all assignment statements in ' +
679     'a selected block of code. It expects all reversible statements to be ' +
680     'contained on a single line.';
681   sEEGrepSearchHelp   = 'Start a new grep search.';
682   sEEGrepResultsHelp  = 'Show previous grep search results.';
683 
684 // nextscreen.dpr
685 resourcestring
686   sUnableToConnect = 'Unable to connect to the selected NXT brick.';
687 
688 // piano.pas
689 resourcestring
690   sPianoFilter = 'NQC Files (*.nqc,*.nqh)|*.nqc;*.nqh|' +
691                  'MindScript files (*.rcx2;*.lsc)|*.rcx2;*.lsc|' +
692                  'LASM Files (*.lasm)|*.lasm|' +
693                  'C++ Files (*.c,*.cpp,*.h,*.hpp)|*.c;*.cpp;*.h;*.hpp|' +
694                  'Pascal Files (*.pas,*.dpr,*.dpk,*.inc)|*.pas;*.dpr;*.dpk;*.inc|' +
695                  'Forth Files (*.4th, *.f, *.fr, *.fth)|*.4th;*.f;*.fr;*.fth|' +
696                  'Java Files (*.java)|*.java|' +
697                  'Next Byte Code Files (*.nbc)|*.nbc|' +
698                  'NXC Files (*.nxc)|*.nxc|' +
699                  'NXT Melody Files (*.rmd)|*.rmd|';
700 
701 // uportsedit.pas
702 resourcestring
703   sSaveNXTDatChanges = 'Save changes to nxt.dat file?';
704 
705 // uNBCInterface.pas
706 resourcestring
707   sCannotFindFile       = 'Unable to find the specified input file'#13#10'File "%s" ; line 1';
708   sNXCCompilationFailed = 'NXC compilation failed.';
709   sNBCCompilationFailed = 'NBC compilation failed.';
710   sVersionCheckFailed   = 'Firmware version check failed.';
711 
712 // uNXTWatchList
713 resourcestring
714   sConfirmDeleteAllWatches = 'Delete all watches?';
715   sWatchName = 'Watch Name';
716   sWatchValue = 'Value';
717   sNotYetImplemented = 'Not yet implemented';
718 
719 implementation
720 
721 end.
722