diff --git a/codemirror/qb-lang.js b/codemirror/qb-lang.js index b891b6b..1f92d85 100644 --- a/codemirror/qb-lang.js +++ b/codemirror/qb-lang.js @@ -39,7 +39,7 @@ CodeMirror.defineMode("qbjs", function(conf, parserConf) { '_display', '_fontwidth', '_freeimage', '_fullscreen', '_g2d', '_g2r', '_green', '_green32', '_height', '_hypot', '_instrrev', '_limit', '_keyclear', '_keydown', '_keyhit', '_loadimage', '_mousebutton', '_mouseinput', '_mousex', '_mousey', '_newimage', '_pi', '_printstring', '_printwidth', '_putimage', '_r2d', '_r2g', '_red', '_red32', '_resize', '_resizewidth', '_resizeheight', '_rgb', '_rgba', '_rgb32', '_rgba32', '_round', - '_screenexists', '_sech', '_shl', '_shr', '_sinh', '_source', '_sndclose', '_sndopen', '_sndplay', '_sndloop', '_sndpause', '_sndstop', '_sndvol', '_tanh', + '_screenexists', '_sech', '_shl', '_shr', '_sinh', '_source', '_sndclose', '_sndopen', '_sndplay', '_sndloop', '_sndpause', '_sndstop', '_sndvol', '_strcmp', '_stricmp', '_tanh', '_title', '_trim', '_width', 'abs', 'asc', 'atn', 'beep', 'chr', 'circle', 'cls', 'color', 'command', 'cos', 'cvi', 'cvl', 'data', 'draw', 'exp', 'fix', 'hex', 'input', 'inkey', 'instr', 'int', 'lbound', 'left', 'lcase', 'len', 'line', 'locate', 'log', 'ltrim', 'mid', 'mki', 'mkl', 'oct', 'paint', 'point', 'preset', 'print', 'pset', 'right', 'rtrim', 'randomize', 'read', 'restore', 'rnd', 'screen', 'shared', 'sgn', 'sin', 'sleep', 'space', 'sqr', diff --git a/qb.js b/qb.js index be3495d..9dde32a 100644 --- a/qb.js +++ b/qb.js @@ -660,6 +660,16 @@ var QB = new function() { GX.soundVolumne(sid, v); }; + this.func__Strcmp = function(x, y) { + return ( ( x == y ) ? 0 : ( ( x > y ) ? 1 : -1 ) ); + }; + + this.func__Stricmp = function(x, y) { + var a = x.toLowerCase(); + var b = y.toLowerCase(); + return ( ( a == b ) ? 0 : ( ( a > b ) ? 1 : -1 ) ); + }; + this.func__Tanh = function(x) { return Math.tanh(x); }; diff --git a/qb2js.js b/qb2js.js index 5b10095..841dc68 100644 --- a/qb2js.js +++ b/qb2js.js @@ -2832,6 +2832,8 @@ if (QB.halted()) { return; } await sub_AddQBMethod( "SUB", "_SndPause", False); await sub_AddQBMethod( "SUB", "_SndStop", False); await sub_AddQBMethod( "SUB", "_SndVol", False); + await sub_AddQBMethod( "FUNCTION", "_Strcmp", False); + await sub_AddQBMethod( "FUNCTION", "_Stricmp", False); await sub_AddQBMethod( "FUNCTION", "_Tanh", False); await sub_AddQBMethod( "SUB", "_Title", False); await sub_AddQBMethod( "FUNCTION", "_Trim", False); diff --git a/tools/qb2js.bas b/tools/qb2js.bas index fde748d..b032ac2 100644 --- a/tools/qb2js.bas +++ b/tools/qb2js.bas @@ -3020,6 +3020,8 @@ Sub InitQBMethods AddQBMethod "SUB", "_SndPause", False AddQBMethod "SUB", "_SndStop", False AddQBMethod "SUB", "_SndVol", False + AddQBMethod "FUNCTION", "_Strcmp", False + AddQBMethod "FUNCTION", "_Stricmp", False AddQBMethod "FUNCTION", "_Tanh", False AddQBMethod "SUB", "_Title", False AddQBMethod "FUNCTION", "_Trim", False