Библиотека макросов

English

O9015.nc

%
O9015
(defer macro call) 
 
 
(DEFINDET DATE)
#191=#0(=YYYY=)
#192=#0(=MM=)
#193=#7(=DD=)
 
(DEFINDET TIME)
#194=#11(=HH=) 
#195=#13(=MM=) 
#196=#0(=SS=)
 
#197=#20(START TYPE) 
 
 
(=== CHECK VARIEBLES ===)
IF[[#191NE#0]AND[[#191NE[ROUND[#191]]]OR[#191GT9999]OR[#191LT0]]]THEN#3000=1(WRONG PARAMETR YEAR)
IF[[#192NE#0]AND[[#192NE[ROUND[#192]]]OR[#192GT99]OR[#191LT0]]]THEN#3000=2(WRONG PARAMETR MONTH) 
IF[[#193NE#0]AND[[#193NE[ROUND[#193]]]OR[#193GT99]OR[#191LT0]]]THEN#3000=3(WRONG PARAMETR DAY) 
IF[[#194NE#0]AND[[#194NE[ROUND[#194]]]OR[#194GT99]OR[#191LT0]]]THEN#3000=4(WRONG PARAMETR HOURS) 
IF[[#195NE#0]AND[[#195NE[ROUND[#195]]]OR[#195GT99]OR[#191LT0]]]THEN#3000=5(WRONG PARAMETR MINUTES) 
IF[[#196NE#0]AND[[#196NE[ROUND[#196]]]OR[#196GT99]OR[#191LT0]]]THEN#3000=6(WRONG PARAMETR SECONDS) 
 
IF[[#197NE#0]AND[[#197NE1]AND[#197NE2]AND[#197NE3]]]THEN#3000=7(WRONG START TYPE)
IF[[#3NE1]AND[#3NE#0]]THEN#3000=8(-C- CAN BE 1 OR NOTHING) 
IF[[#191EQ#0]AND[#192EQ#0]AND[#193EQ#0]AND[#194EQ#0]AND[#195EQ#0]AND[#196EQ#0]]THEN#3000=8(MISSIG ALL PARAMETR)
IF[#1EQ#0]THEN#3000=9(MISSIG NUMBER MACRO) 
IF[[#1LE0]OR[#1NE[ROUND[#1]]]]THEN#3000=10(WRONG NUMBER MACRO) 
(=== END ===)
 
 
(=== DEFAULT ===)
#190=0(DEFAULT HASH) 
IF[#191NE#0]THEN#190=#190+#191*10000(ADD YEAR) 
IF[#192NE#0]THEN#190=#190+#192*100(ADD MONTH)
IF[#193NE#0]THEN#190=#190+#193(ADD DAY)
IF[#194NE#0]THEN#190=#190+#194*10000(ADD HOURS)
IF[#195NE#0]THEN#190=#190+#195*100(ADD MINUTES)
IF[#196NE#0]THEN#190=#190+#196(ADD SECONDS)
 
IF[#191EQ#0]THEN#191=FIX[#3011/10000](DEFAULT YEAR)
IF[#192EQ#0]THEN#192=FIX[#3011/100]-FIX[#3011/10000]*100(DEFAULT MONTH)
IF[#193EQ#0]THEN#193=#3011-FIX[#3011/100]*100(DEFAULT DAY) 
 
IF[#194EQ#0]THEN#194=FIX[#3012/10000](DEFAULT HOURS) 
IF[#195EQ#0]THEN#195=FIX[#3012/100]-FIX[#3012/10000]*100(DEFAULT MINUTES)
IF[#196EQ#0]THEN#196=#3012-FIX[#3012/100]*100(DEFAULT SECONDS) 
 
IF[#197EQ#0]THEN#197=3(DEFAULT START TYPE) 
#198=#191*10000+#192*100+#193(DEFINDET DATE =YYYY MM DD=)
#199=#194*10000+#195*100+#196(DEFINDET TIME =HH MM SS=)
(=== END ===)
 

GOTO[10+#197](SELECT MODE)
 
 
N11(=== WORK UNTIL TO ===) 
IF[#3011GT#198]GOTO99
IF[[#3011EQ#198]AND[#3012GE#199]]GOTO99
IF[[#3EQ1]AND[#999EQ#190]]GOTO99(CHECKING COUNTS)
 
G65P#1B#2E#8F#9I#4J#5K#6Q#17R#18S#19U#21V#22W#23X#24Y#25Z#26(CALL MACRO) 
#999=#190(SAVE HASH) 
 
GOTO99(=== END ===)
 
 
N12(=== WORK AFTER ===)
IF[#3011LT#198]GOTO99
IF[[#3011EQ#198]AND[#3012LE#199]]GOTO99
IF[[#3EQ1]AND[#999EQ#190]]GOTO99 
 
G65P#1B#2E#8F#9I#4J#5K#6Q#17R#18S#19U#21V#22W#23X#24Y#25Z#26(CALL MACRO) 
#999=#190(SAVE HASH) 
 
GOTO99(=== END ===)
 
 
N13(=== WORK AROUND ===) 
IF[#7EQ#0]THEN#193=0(=DD=) 
IF[#11EQ#0]THEN#194=0(=HH=)
IF[#13EQ#0]THEN#195=0(=MM=)
 
#198=#3011(DEFINDET DATE =YYYY MM DD=) 
#199=#3012(DEFINDET TIME =HH MM SS=) 
 
WHILE[1]DO1(ENDLESS CYCLE) 
IF[[#3011GE[#198+#193]]AND[#3012GE[#199+#194*1000+#195*100]]]GOTO99
G65P#1B#2C#3E#8F#9I#4J#5K#6Q#17R#18S#19U#21V#22W#23X#24Y#25Z#26(CALL MACRO)
END1 

GOTO99(=== END ===)
 
 
N99
M99
%