![]() |
![]() |
#1 | |
Local Moderator
Join Date: Oct 2009
Location: Lancashire, UK
Age: 48
Posts: 1,633
|
CanDo General Help Thread
I thought I'd start this thread in case anyone out there wants to try out the multi-media creator CanDo.
There are quite a few things I discovered by trial and error, so if anyone wants advice or can share tips, that would be great. Installing: I found V3.0 on the EAB file server, or it could be on Archive.org. There may be other places like PlanetEmu etc. Once installed, run it, then quit. Then run the V3.008 update patch from Aminet. The update patch switches off the interlaced interface, so you might want to press the Config button, Screen, Cando - and click Interlace, and Save it - to switch it back on again. Quote:
This quote is from an old post. I tried to use the return command but it seems this doesn't appear in the Lexicon, and comes up with an error. I'm looking for a reliable way to loop the inputs so that the game checks for joystick inputs every few jiffies, but otherwise keeps the game rolling. I want to call the joystick function but I dont know how to do this, as the function is not a routine I can access? I can force the game to run in a while loop, but doing so locks me out of the interface, and the buttons, so there is no way to break out of it - causing the game to lock up. In an ideal world I would put Wait Until Joystick Arg2<>Nothing But I cant get my head around it. -- FYI - Some handy shortcut keys Main Window: RAmiga + 1 = Config RAmiga + 2 = Routines RAmiga + 3 = IFF Screen Grab RAmiga + 8 = Clear Window RAmiga + 9 = Clear Variables RAmiga + 0 = Clear Buffers Routine Editor: RAmiga + 1 = Expression Calculator RAmiga + 2 = Switch Events RAmiga + 3 = Lexicon Assistant (very useful!!!) RAmiga + 4 = Run Script RAmiga + 6 = Routines RAmiga + 7 = Run Debugger CTRL + F4 = Break (?) CTRL + F9 = Raise/Lower Script Editor Window Last edited by lifeschool; 21 February 2024 at 19:32. |
|
![]() |
![]() |
#2 |
Registered User
Join Date: Jun 2019
Location: DFW
Posts: 115
|
Thanks, didn't realize AmiNet had CanDo update. But any chance do you have the English CanDo v3 manual?
EDIT NV, found it! https://www.retro-commodore.eu/amiga...e/?rceu_page=4 Last edited by FerociousAmiga; Yesterday at 05:22. |
![]() |
![]() |
#3 |
Local Moderator
Join Date: Oct 2009
Location: Lancashire, UK
Age: 48
Posts: 1,633
|
Yes, those two are the manuals I have as well.
There is nothing about V3 commands in those books, but here is the ful V3 commands list: Note: I think it is Alt+3 (or something) to bring up this text within the package. AbortDoubleClick Integer = Absolute({Number}) Real = ACos({Number}) AdjustPeriod {Period} ,{Channel} AdjustVolume {Volume} ,{Channel} Variable = Alias({VarName}) Logical = AnimationStatus Ansi = AnsiPressed Logical = AnyChangedBuffers AreaCircle {X}, {Y}, {Radius} AreaCopy {X}, {Y}, {Width}, {Height}, {DestX}, {DestY} AreaEllipse {X}, {Y}, {XRadius}, {YRadius} AreaPalette {X}, {Y}, {Width}, {Height} [,{Rows} [,{LowColor} [,{HighColor}]]] AreaPolygon {X1}, {Y1}, {X2}, {Y2}, {X3}, {Y3} [,up to six points] AreaRectangle {X}, {Y}, {Width}, {Height} AreaScroll {X}, {Y}, {Width}, {Height}, {DeltaX}, {DeltaY} Argument = Arg1 Integer = ArgCount Arguments <Varname>[={default}] [,<Varname>[={default}] ...] Integer = Ascii({String}) Angle = ASin({Number}) Name = AskForFileName({Def} [,{Title} [,{X} [,{Y} [,{W} [,{H}]]]]]) Nothing = AskForHelp({FileName} ,{NodeName}[, {PubScreen}] Select = AskForResponse({Message} [,{Title} [,{Choices}]]) FuncVar = AssignFunction({RoutineName}) NewFuncVar = AssignFunctionValue({FunctionVar}) Angle = ATan({Number}) AttachObject {ObjectName} [,{Arg1} [,up to ten arguments]] Audio {Logical} [,{Channel}] Integer = AvailableChipMemory Integer = AvailableFastMemory Integer = AvailableMemory BreakPoint BrushAnims {Logical} BufferType = BufferType({BufferName}) String = BumpRevision({CurrentRevision}) String = CanDoLegalNotice CardName = CardName Result = Case({Index}, {Expression1} [,up to ten expressions] ) CauseError {errorcode} String = CenterString({String}, {Length} [,{Fillstring}]) String = Char({Integer}) String = CharsToBegOfLine String = CharsToEndOfLine HexString = CharsToHex({String}) string = CheckBreakFlags Clear <flags> ClearClipRegions ClearWindow [{ColorReg}] ClipBrush {X}, {Y}, {Width}, {Height}, {BrushBufferName} [,<memflag>] ClipIconImage {IconBufferName}, {BrushBufferName} [,{AltBrushBufferName}] ClipPicture {PictureBufferName} [,<memflag>] Integer = ClipTransparentColor Close {BufferName} ClosePendingWindow ColorReg = ColorOfPixel({X}, {Y}) CopyDocumentTo {document} Value = Cos({Angle}) Value = CosH({Value}) CreateBrush {BufferName}, {Width}, {Height}, {Depth} Text = CurrentListenTo String = CurrentSongName Integer = CurrentSongTempo Integer = CurrentSongType Integer = CurrentSongVolume Text = CurrentSpeakTo CycleColors {FromColorReg},{ToColorReg}[,<directionflags>] String = DeckName FilePath = DefaultTool({IconBufferName}) RadianAngle = DegToRad({DegreeAngle}) Delay {Minutes}, {Seconds}, {Jiffies} Delete <flags>[,{Count}] DeleteArrayEntry <ArrayVar>, {ArrayIndex} DetachObject {ObjectName} DisableObject {ObjectName} Dispose <VarName1> [,<VarName2> [,up to ten VarNames]] DisposeAll Do {RoutineName} [,{Argument1} [,up to ten arguments]] value = Do({RoutineName} [,{Arg1} [,up to ten arguments]]) DocBufName = DocumentName DoObjectScript {ObjectName},<ScriptType> [,{Argument1} [,up to ten arguments]] DoOnError {RoutineName} [{Argument1} [,up to ten arguments]] Dos {DOSCommandLine} [,<STDOUT>] DrawBorder {X}, {Y}, {Width}, {Height}, <borderflags> [,{Pen1} [,{Pen2}]] DrawCircle {X}, {Y}, {Radius} DrawEllipse {X}, {Y}, {XRadius}, {YRadius} DrawLine {X1}, {Y1}, {X2}, {Y2} DrawPixel {X}, {Y} DrawPolygon {X1}, {Y1}, {X2}, {Y2}, {X3}, {Y3} [,up to six points] DrawRectangle {X}, {Y}, {Width}, {Height} DrawTo {X}, {Y} String = DupeString({String}, {Count}) Echo [{String} [,<NOLINE>]] Else ElseIf {Logical} EnableObject {ObjectName} [, {Switch}] EndIf EndLoop Integer = ErrorCode Integer = ErrorLineNumber String = ErrorObjectName String = ErrorObjectType Logical = Errors String = ErrorScriptName String = ErrorScriptType String = ErrorSourceLine String = ErrorText Result = Evaluate({Expression}) Result = EvaluateExpression({Expression}) Logical = Exists({FilePath}) ExitLoop ExitScript [{Result}] Value = Exp({Value}) Logical = False FastFeedback {Logical} FileName = FileOf({FilePath}) FileReadChars {FileReadBufferName}, <VarName>, {Count} [,<HEX>] FileReadLine {FileReadBufferName}, <VarName> Integer = FileSize({FilePath}) String = FileType({FilePath}) FileWriteChars {FileWriteBufferName}, {String} [,{Count} [,<HEX>] FileWriteLine {FileWriteBufferName}, {String} FillToBorder {X}, {Y}, {ColorReg} FilterDocument {pattern} Integer = FindChars({SourceString}, {SearchString} [,{StartAtChar}]) Integer = FindWord({SourceString}, {SearchString} [,{StartAtWord} [,{WordDelimiters}]]) ArrayIndex = FirstArrayIndex(<ArrayVar>) FirstCard [{Arg1} [,up to ten arguments]] FloodFill {X}, {Y} Flush {BufferName} FlushAll String = FormatValue({Value}, {FormatString}) Value = Fraction({Number}) FrameNumber = FrameOfAnimation({BAnimBufferName}) Variable = GetArgs({String}, [,{Index}]) GetAttr {DocumentObject}, <Switch>, <AttrReturned> GetBrushAnimCoordinates {BAnimBufferName}, <XVarName>, <YVarName> GetBufferInfo {BufferName}, <Var1>[, <Var2>[, <Var3>[, <Var4>]]] Text = GetChars({String}, {StartingChar}, {NumberOfChars}) RecordVar = GetDBObjects GetDiskInfo {FilePath}, <NumberOfBlocksVar> [,<NumberUsedVar> [,<BytesPerBlockVar>]] GetFileInfo {FilePath}, <SizeInBytesVar> [,<NumberOfBlocksVar> [,<AttributesVar> GetFontInfo <Source>, <FontName>[, <FontSize>] GetInsertedLineColors <Foreground>, <AltForeground> GetLineAttribute <Attribute>, <color> GetPropPosition {ObjectName}, <HorizPosVarName> [,<VertPosVarName>] GetPropRange {ObjectName}, <LowHorizVarName>, <HighHorizVarName> [,<LowVertVarName>, <HighVertVarName>] GetPropVisibleRange {ObjectName}, <DisplayHorizVarName> [,<DisplayVertVarName>] GetRGB {ColorReg}, <RedVar>, <GreenVar>, <BlueVar> ColorReg = GetScreenPen({Entry}) GetTextDimensions {String}, <WidthVarName>, <HeightVarName> [,<BaselineVarName>] GetTextExtent <string>, <width>, <height> GetTextFit <string>, <width>, <numchars> GetViewOffset <XVarName>, <YVarName> GetWindowLimits <MinWidthVarName>, <MinHeightVarName>, <MaxWidthVarName>, <MaxHeightVarName> String = GetWord({String}, {WordNum} [, {WordDelimiters}]) Global <VarName1>, [<VarName2>,... [up to 10 VarNames]] GotoCard {CardName} [,{Arg1} [,up to ten arguments]] GotoEndLoop String = HexToChars({HexString}) Integer = HexToInteger({HexString}) Logical = HiRes String = IconHighlight({IconBufferName}) String = IconType({IconBufferName}) If {Logical} IfError Result = IfThen({Logical}, {TrueExpression} [,{FalseExpression}]) Real = Infinity String = Input({Prompt}) InsertArrayEntry <ArrayVar>, {ArrayIndex} InsertBufferList InsertChangedBufferList String = InsertChars({SourceString}, {DestinationString} [,{StartAtChar}]) InsertDeviceList [<flags>] InsertDirectoryList [<flags>] InsertDocument {SourceDocumentName} [,{StartingLine} [,{LineCount}]] InsertEffectsList {Flags} InsertMessagePortList InsertPubScreenList InsertRecordNames <RecordVar> InsertStartingMessage InsertToolTypeList {IconBufferName} InsertVariableNames InstallClipRegion {X}, {Y}, {Width}, {Height} [,<methodflags>] Integer = Integer({Expression}) Integer = IntegerFrom({ObjectName}) HexString = IntegerToHex({Integer}) Logical = Interlace Integer = IntuitionVersion Logical = IsAlias(<VarName>) String = KeyPressed Integer = LargestChunkOfMemory ArrayIndex = LastArrayIndex(<ArrayVar>) LastCard [{Argument1} [,up to ten arguments]] String = LeftJustify({String}, {Width} [,{Fillstring}]) Integer = LengthOfLine Let <VarName>={Expression} [,<VarName>={Expression}, [...up to 10 VarNames with Expressions]] String = LibraryVersion Integer = Limit({MinLimit}, {MaxLimit}, {TestInteger}) Integer = LinesInDocument ListenTo {ARexxPortName} LoadBrush {FilePath} [,{BrushBufferName} [,<loadflags>]] LoadBrushAnim {FilePath} [,{BAnimBufferName} [,<loadflags>]] LoadDocument {FilePath} [,{DocumentBufferName} [,<loadflags>]] LoadIcon {FilePath} [,{IconBufferName} [,<loadflags>]] LoadPalette {FilePath} [,{PaletteBufferName} [,<loadflags>]] LoadPicture {FilePath} [,{PictureBufferName} [,<loadflags>]] LoadShape {BrushFile}[, {ShapeBuffer}[, <Options>]] LoadSound {FilePath} [,{SoundBufferName} [,<loadflags>]] LoadSubDeck {FilePath} [,{SubDeckBufferName} [,<ASNEEDED>]] Result = LoadVariable({FilePath}) Local <VarName1>[={value1}] [,<VarName2>[={value2}] ...] LockPalette [{FirstColor}[, {LastColor}]] Value = Log10({Value}) Value = LogE({Value}) Logical = Logical({Expression}) Loop [<LoopVar>, {Var1}[, {Var2}[, {Var3}] String = LowerCase({String}) MakeDocument {DocumentBufferName} MakeIcon {IconBufferName}, <flags>, {BrushBufferName} [,{AltBrushBufferName}] Integer = Match({ToLocate}, {MatchingData1} [,up to ten matching datas]) Integer = Max({Integer1}, {Integer2} [,up to ten integers]) Integer = MaxInteger Value = MaxValue Integer = MessageErrorCode Text = MessageReturned Integer = Min({Integer1}, {Integer2} [,up to ten integers]) Integer = MinInteger Value = MinValue Integer = MouseX Integer = MouseY MoveBrushAnim {BAnimBufferName}, {XVel}, {YVel} [, {XAccel}, {YAccel}[, {Frames} [,<flag>]]] MoveBrushAnimTo {BAnimBufferName}, {DestX}, {DestY} [,{Frames} [,<flag>]] MoveCursor <directionflags> [,{Count}] MoveCursorTo <flags> [,{Count}] MoveObject {ObjectName}, {X}, {Y} MovePen {X}, {Y} MoveScreen {DeltaX}, {DeltaY} MoveWindow {DeltaX}, {DeltaY} NewLine ArrayIndex = NextArrayIndex(<ArrayVar>, {ArrayIndex}) NextCard [{Argument1} [,up to ten arguments]] Logical = No Nop Real = NotANumber Nothing = Nothing Logical = NTSC Integer = NumberOfArrayEntries(<ArrayVar>) Integer = NumberOfChars({String}) Integer = NumberOfWords({String} [,{WordDelimiters}]) Logical = ObjectAttached({ObjectName}) String = ObjectName Logical = ObjectState({ObjectName}) Logical = Off Logical = On Result = OpenDeck({DeckName} [,{string1}... [up to 10 Arguments]] OpenFile {FilePath}, {FileIOBufferName}, <IOflags>, <AccessFlags> OpenRequester {SubDeckBufferName}, {CardName} [,{Arg1} [,up to ten arguments]] OpenWindow {SubDeckBufferName}, {CardName} [,{Arg1} [,up to ten arguments]] PathName = ParentOf({PathName}) FilePath = PathAndFile({PathName}, {FileName}) PathName = PathOf({FilePath}) Boolean = PatternMatch({String}, {Pattern}) ColorReg = PenA ColorReg = PenB ColorReg = PenO Perform {String} PerformDocument {Document} Real = Pi PlaySong {filename or filepattern} [, WAIT CONTINUOUS] PlaySound {SoundBufferName} [,<audioflags> [,{PeriodRate}]] PlaySoundSequence {DocumentBufferName} [,<audioflags> [,{PeriodRate}]] Pointer {Logical} Integer = PositionOfWord({String}, {WordNum} [,{WordDelimiters}]) PositionOnLine {LineNumber} Integer = PreviousArrayIndex(<ArrayVar>, {ArrayIndex}) PreviousCard [{Arg1} [,up to ten arguments]] PrintScreen [{x} [,{y} [,{width} [,{height}]]]] PrintText {String} [, {X}, {Y}] PrintWindow [{x} [,{y} [,{width} [,{height}]]]] Boolean = PubScreenExists({ScreenName}) String = QualifiersPressed Quit [{Result}] DegreeAngle = RadToDeg({RadianAngle}) RamScram Integer = Random({MinimumInteger}, {MaximumInteger}) Integer = RawKeyCode RayTo {X}, {Y} Real = Real({expression}) ReattachObject {ObjectName} [,{Arg1} [,up to ten arguments]] RecreateMask {BufferName} [,{TransparencyColor}] RefreshObject {ObjectName} RemoveBrushAnim {BAnimBufferName} String = RemoveChars({String}, {StartAtChar}, {NumberOfChars}) RenderTo <TypeOfRender> [,{BufferName}] Replace {SearchString}, {ReplaceString} [,<flags>] ReplaceAttribute <Switches>, {Old} ,{New} ReplyARexxWith <flag> [,{Message or ErrorCode}] ResetBrushAnimFrame {BAnimBufferName} [,{FrameNumber}] ResizeWindow {Width}, {Height} ReverseDocument String = RightJustify({String}, {Length} [,{Fillstring}]) Value = Round({Value} [,{DigitPlace}]) |
![]() |
![]() |
#4 |
Local Moderator
Join Date: Oct 2009
Location: Lancashire, UK
Age: 48
Posts: 1,633
|
SaveAllChangedBuffers
SaveBrush {BrushBufferName} [,{SaveFilePath}] SaveDocument {DocumentBufferName} [,{FilePath} [,<flags>]] SaveIcon {IconBufferName} [,{SaveFilePath}] SavePicture {PictureBufferName} [,{SaveFilePath}] SaveVariable <VarName>, {FilePath} Integer = ScreenAddress Integer = ScreenColors Integer = ScreenHeight Integer = ScreenModeID String = ScreenTitle ScreenTitleBar {Logical} ScreenTo <flags> Integer = ScreenWidth Integer = ScreenX Integer = ScreenY ArrayIndex = SearchArray(<ArrayVar>, {DataToSearchFor} [,{KeyString} [,{StartAtIndex}]]) SearchFor {SearchString} [,<flags>] SearchForAttribute <Switch> ,{Value} Logical = SearchFound SendMessage {Message} [,<flags>] SendToParentDeck [{Argument1} [,up to ten arguments]] SendToSubDeck {SubDeckBufferName} [,{Argument1} [,up to ten arguments]] SetAreaDrawMode <flags> SetAttr {ObjectName}, <Switch>, {value} SetAutoFileRequester {Logical} SetAutoLoadFlags <flags> SetBrushAnimFlags {BufferName}, <flags> [,{PlayTicks}] SetBusyPointer [{BrushBuffer} [,{XHotSpot}, {YHotSpot}] SetChannel {ChannelNumber} SetClipTransparentColor {ColorReg} SetCurrentDirectory {PathName} SetDBObjects <RecordVar> SetDefaultTool {IconBufferName}, {ToolString} SetDrawMode <drawflags> SetEffect <efxmode> ,{Argument1} [,{Argument2}] SetExpression <flags> SetFileBufferSize {KiloBytes} SetFileRequestMode <type>,<flags> SetFileRequestPattern {Initial} [,{Accept} [,{Reject}]] SetIconHighlight {IconBufferName}, <flags> [,{AltBrushBufferName}] SetIconImage {IconBufferName}, {BrushBufferName} [,{AltBrushBufferName}] SetInsertedLineColors {foreground}, {altforeground} SetInteger {ObjectName}, {Integer} SetLineAttribute <Switch>, {color}[, {number of lines}] SetObjectState {ObjectName}, {Logical} SetPen {PenAColorReg} [,{PenBColorReg} [,{PenOColorReg}]] SetPointer [{BrushBufferName} [,{XHotSpot}, {YHotSpot}]] SetPrintFont {FontName}, {PointSize} SetPrintStyle <styleflags> [,{ExtraPen1} [,{ExtraPen2}]] SetPromotion ON|OFF SetPropPosition {ObjectName}, {HorizPos} [,{VertPos}] SetPropRange {ObjectName}, {LowHoriz}, {HighHoriz} [,{LowVert}, {HighVert}] SetPropVisibleRange {ObjectName}, {DisplayHoriz} [,{DisplayVert}] SetRGB {ColorReg}, {RedValue}, {GreenValue}, {BlueValue} SetScreenTitle {String} SetSearchArrayFlags <flags> SetSongTempo {tempo} SetSongVolume {volume} SetStandardOut {FileWriteBufferName} SetSystemRequesterTo <WINDOW | WORKBENCH | NOWHERE> SetText {ObjectName},{String} SetToolTypeList {IconBufferName}, {DocumentBufferName} SetViewOffset {X}, {Y} SetVolume {Integer} [,{ChannelNumber}] SetWindowBrushAnimTPS {TicksPerSecond} SetWindowLimits {MinWidth}, {MinHeight}, {MaxWidth}, {MaxHeight} SetWindowTitle {String} SetWordDelimiters {WordDelimiters} ShowBrush {BrushBufferName}, {X}, {Y} [,<paletteflags> [,{MinTermValue}]] ShowBrushAnim {BAnimBufferName}, {XCoor}, {YCoor} [,{NTimes}] ShowBrushEfx {buffer}, {dx}, {dy}, {efx}, {speed} [, {dw}, {dh}[, {sx}, {sy}, {sw}, {sh}]] ShowPalette {PaletteBufferName} ShowPaletteEfx {Efx}, {Duration} [, {Buffer}] ShowPicture {PictureBufferName} Integer = Sign({Value}) Value = Sin({Angle}) Value = SinH({Value}) Integer = SizeOfDocument Song <switches> SortArray <ArrayVar>, <flags> [,{KeyString}] SortDocument <flags> [,{StartingColumn}] SpeakTo {ARexxPortName} SplitLine [{Count}] Value = SquareRoot({Value}) Logical = StartedFromWorkbench Static <VarName1>[={value1}] [,<VarName2>[={value2}] ...] StopScript [{Result}] String = String({Expression}) Logical = Supervised SystemControl <Option> [, {Value}] Value = Tan({Angle}) Value = TanH({Value}) String = TextFrom({ObjectName}) String = TextFromDocument({DocumentName}) String = TheCharacter Integer = TheColumnNumber Logical = TheCommandLine PathName = TheCurrentDirectory String = TheDate String = TheDrawMode String = TheLine Integer = TheLineNumber String = TheMessage Name = TheOriginDirectory String = TheTime String = TheWord String = TheWordDelimiters Integer = TimeLeftOnChannel({ChannelNumber}) Integer = TotalAllocatedMemory Transparent {Logical} Logical = TransparentStatus String = TrimString({String}) Logical = True Type {String} [,<flag>] UnlockPalette [{FirstCol}[, {LastCol}]] Until {Logical} Integer = UnusedAllocatedMemory String = UpperCase({String}) UseColoredLines {boolean} Boolean = UsingColoredLines Logical = ValidReal({Real}) String = VarType(<Var>) Logical = VerifyExpression({String}) While {Logical} Value = Whole({Expression}) Integer = WindowAddress Integer = WindowBorderBottom Integer = WindowBorderLeft Integer = WindowBorderRight Integer = WindowBorderTop Integer = WindowColors Integer = WindowHeight String = WindowName String = WindowOnFrontScreen String = WindowTitle WindowTo <flags> Integer = WindowWidth Integer = WindowX Integer = WindowY Integer = WorkbenchColors Integer = WorkbenchHeight Integer = WorkbenchWidth WorkWithDocument {DocumentBufferName} Logical = Yes |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Help with CanDo routines | fstltna | support.Apps | 2 | 10 March 2023 19:18 |
Cando 3.0 Crash | bigpoppa206 | support.Apps | 2 | 13 January 2019 11:19 |
Looking for CANDO... | astuermer | support.Apps | 3 | 09 November 2018 20:23 |
CanDo v3.0 | otro | request.Apps | 29 | 24 July 2014 17:05 |
Looking for manuals for Scala IC400 and CanDO. | mugo | request.Apps | 5 | 09 November 2010 15:42 |
|
|