Been playing with this and it is strange.
Used your vars in this code.
Code:
'18F6680
Asm
ERRORLEVEL -205
Endasm
DEFINE OSC 20
@ __CONFIG _CONFIG1H, _OSC_HS_1H
@__CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_128_2H
@__CONFIG _CONFIG4L, _LVP_OFF_4L
SOUT VAR PORTF.4
X VAR LONG
MN VAR LONG
MX VAR LONG
ST VAR LONG
mn = -2147483600 'almost max'd out at 31 bits
mx = 2147483600 'almost max'd out at 31 bits
st = 1234567 'step size can vary quite a bit
START:
SEROUT2 SOUT,16468,["START",13,10]
GOSUB SKI_COUNT
SEROUT2 SOUT,16468,["STOP",13,10]
END
SKI_COUNT:
' For x = mn to MX step 10000'NEVER STOPS
' For x = mn to MX step 100000 'NEVER STOPS
FOR X = -2000000000 TO 2000000000 STEP 2146483647 'STOPS,BUT STRANGE
SEROUT2 SOUT,16468,[SDEC X,13,10]
Next x
RETURN
The output when it does not stop(roll over)
Code:
2147446400
2147456400
2147466400
2147476400
-2147480896
-2147470896
-2147460896
-2147450896
And the STRANGE output when it does stop.
Code:
START
-2000000000
146483647
-2002000002
144483645
-2004000004
142483643
-2006000006
140483641
-2008000008
138483639
-2010000010
136483637
-2012000012
134483635
-2014000014
132483633
-2016000016
130483631
-2018000018
128483629
-2020000020
126483627
-2022000022
124483625
-2024000024
122483623
-2026000026
120483621
-2028000028
118483619
-2030000030
116483617
-2032000032
114483615
-2034000034
112483613
-2036000036
110483611
-2038000038
108483609
-2040000040
106483607
-2042000042
104483605
-2044000044
102483603
-2046000046
100483601
-2048000048
98483599
-2050000050
96483597
-2052000052
94483595
-2054000054
92483593
-2056000056
90483591
-2058000058
88483589
-2060000060
86483587
-2062000062
84483585
-2064000064
82483583
-2066000066
80483581
-2068000068
78483579
-2070000070
76483577
-2072000072
74483575
-2074000074
72483573
-2076000076
70483571
-2078000078
68483569
-2080000080
66483567
-2082000082
64483565
-2084000084
62483563
-2086000086
60483561
-2088000088
58483559
-2090000090
56483557
-2092000092
54483555
-2094000094
52483553
-2096000096
50483551
-2098000098
48483549
-2100000100
46483547
-21
02000102
44483545
-2104000104
42483543
-2106000106
40483541
-2108000108
38483539
-2110000110
36483537
-2112000112
34483535
-2114000114
32483533
-2116000116
30483531
-2118000118
28483529
-2120000120
26483527
-2122000122
24483525
-2124000124
22483523
-2126000126
20483521
-2128000128
18483519
-2130000130
16483517
-2132000132
14483515
-2134000134
12483513
-2136000136
10483511
-2138000138
8483509
-2140000140
6483507
-2142000142
4483505
-2144000144
2483503
-2146000146
483501
STOP
Bookmarks