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
%