Bulhmann decompression calculator (ZH16B)

Post Reply
Boub65
Posts: 175
Joined: Tue Sep 12, 2017 4:34 pm
Location: Rabat, Morocco

Bulhmann decompression calculator (ZH16B)

Post by Boub65 »

====================================================
DISCLAIMER :
ZH16B is a DM41X deco program that is given for educational
purpose only (RPN deco calculations)
IT SHOULD NOT BE USED TO PLAN YOUR DIVES...
... although it gives same results (around 99%) as
MULTIDECO ANDROID commercial planner!
====================================================

Version changes :
- 11/08/2021 : first DM41X version with Air/Nitrox/Trimix gas usage as travel, bottom or deco mixes. Surface interval between dives also allowed.

Introduction :
This is the first version of a RPN deco planner using the Buhlmann algorithm, the ZH16B algorithm to be precise.
(https://en.m.wikipedia.org/wiki/B%C3%BC ... _algorithm)
The Buhlmann ZH16B algorithm uses a base of 16 M-Values (A and B) for Nitrogen and Helium decompression TABLES.
The program also uses Erik Baker's gradient factors when computing ceiling using Air/Nitrox/Trimix (https://wrobell.dcmod.org/decotengu/model.html)

Documentation :
The ZH16B program for the DM41X has the same specifications as the DM42 program, although it is not the same program.
Some ALPHA prompts my slightly differ because all characters are not available in the DM41X, but noting that would force a specific documentation for DM41X
Please refer to this thread (viewtopic.php?f=19&t=3044) for the documentation, examples, discussion, etc...

DM41X limitations :
The only limitation is that you have to use HEPAX module to store the 3x DM41X programs.
The programs use 190 registers, and is quite long, so it could not fit in standard memory.

I have split the (very long program) into 3 parts :
zhtools.raw
(557 Bytes) Downloaded 13 times
zhinit.raw
(1.27 KiB) Downloaded 11 times
zh16b.raw
(1014 Bytes) Downloaded 13 times
===============================================

Code: Select all

00 { 1011-Byte Prgm }
01▸LBL "ZH16B"
02 XEQ "ZHINIT"
03 "SURFACE (?)"
04▸LBL "LOOP"
05 XEQ "ZHSHOW"
06 STOP
07 X<>Y
08 STO 21
09 R↓
@ PROF2 is stored in the format dd.mmm
@ dd = depth and mmm = minutes of the leg
10 STO 22
11 RCL 21
@ did we enter a mix = 0?
12 X=0?
13 GTO 00
@ mix!=0, we extract the mix composition
@ HE2% is just the fractional part of the mix
14 FP
15 STO 25
@ now we compute the N22% part
@ N2 = (100 - O2)/100 - HE2%
@ we start at N22% = 100%
16 100
@ we retreive O2 part and compute the %
17 RCL 21
18 IP
19 -
20 100
21 ÷
@ we retreive now HE2%
22 RCL 25
23 -
24 STO 24
@ Main
@ Main and no mix change
25▸LBL 00
@ PROF2 is still in the format dd.mmm
@ dd = depth and mmm = minutes of the leg
26 RCL 22
@ did we request a stop calculcation
@ if yes, we go to stop calculations
27 X=0?
28 GTO "STOPS"
@ not a stop, we add a new leg
@ we extract the depth and time of the leg
@ PROF2 = dd.mmm
@ T2 = mmm
29 FP
30 1ᴇ3
31 ×
32 STO 23
@ PROF2 = dd
33 RCL 22
34 IP
35 STO 22
@ now we calculate the depth gradient 
@ new depth - current depth
36 RCL 00
37 -
@ are we ascending (new depth - current depth>0?)
38 X<0?
39 GTO "UP"
@ are we descending (new deth - current detph>0?)
40 X>0?
41 GTO "DOWN"
@ we are staying at same depth! no need to calculate 
@ ascent or descent values (=0)
@ nor ascent or descent values (R=TR=0)
42 0
43 STO 17
44 STO 18
@ no need to calculate PP because of heavy calculations,
@ just copy B => C
45 78.09301
46 XEQ "PPB2C"
47 158.17301
48 XEQ "PPB2C"
@ new mix is now current mix
49 RCL 24
50 STO 02
51 RCL 25
52 STO 03
@ we have now to calculate the horizontal part of leg
53 GTO "HORIZ"
@ case we are ascending
@ we need to calculate tr and R with Vdwn
54▸LBL "UP"
55 "DIVE ↑ (R/S)"
@ we calculate the ascending leg with current mix
@ rule is to use the current mix when ascending
@ (certainly due to risk of high O2 if we use new 
@ mix of the leg)
@ we use Reg26 = Vup
56 RCL 05
57 STO 26
58 GTO 01
@ case we are descending
@ we need to calculate tr and R with Vdwn
59▸LBL "DOWN"
60 "DIVE v (R/S)"
@ is it the first leg?
61 RCL 00
62 X≠0?
63 GTO 04
@ if it is the first leg, the current mix used during decent is the leg mix!
64 RCL 24
65 STO 02
66 RCL 25
67 STO 03
@ we reset DTR because it is first leg
@ important if we track surface intervals
68 0
69 STO 01
@ now we are sure to have the good mix in %N2 and %HE
70▸LBL 04
@ we calculate the descending with current mix
@ rule is to use the current mix when descending
@ we use Reg26 = Vdwn
71 RCL 04
72 STO 26
@ all the calculation are now independent of Vup 
@ and Vdwn stored in k (Reg26)
73▸LBL 01
@ tr = (Proff - Profi)/Reg26
@ proff is leg depth
@ profi is current depth
74 RCL 22
75 RCL 00
76 -
77 RCL 26
78 ÷
79 STO 18
@ R = Reg26*mtob*N2
80 RCL 26
81 RCL 15
82 ×
83 RCL 02
84 ×
85 STO 17
@ Pio2 = (Prof*mtob + Patm - Pwvp)
@ Pio = Pio2 * N2
86 RCL 14
87 RCL 12
88 -
89 RCL 00
90 RCL 15
91 ×
92 +
93 STO 19
94 RCL 02
95 ×
96 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
97 30.04501
98 XEQ "PPN2HEV"
@ R = Reg26*mtob*He
99 RCL 26
100 RCL 15
101 ×
102 RCL 03
103 ×
104 STO 17
@ Pio = Pio2 * He
105 RCL 19
106 RCL 03
107 ×
108 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
109 110.12501
110 XEQ "PPN2HEV"
@ dtr = dtr + tr
111 RCL 18
112 STO+ 01
113 XEQ "ZHSHOWV"
114 STOP
@ after calculating ascent/descent with current mix,
@ the leg is now calculated with leg mix 
115 RCL 24
116 STO 02
117 RCL 25
118 STO 03
@ calculate the flat portion of the leg
119▸LBL "HORIZ"
120 "DIVE > (?)"
@ did we dive or is it just a surface interval?
121 RCL 22
122 X=0?
@ here we know that we are dealing with a surface
@ interval
123 "SURFACE > (?)"
@ is it a "virtual leg" with no time at depth.
@ this is used to change mixes for example
124 RCL 23
125 X=0?
126 GTO 02
@ are we ascending ? if we are time during ascent
@ is not retreived from time at depth. total leg time
@ is kept unchanged
127 RCL 22
128 RCL 00
129 -
130 X<0?
131 GTO 03
@ we are descending, so time during descent is
@ included in total leg time
132 RCL 18
133 STO- 23
@ do we find ourselves with a negative time at depth, 
@ so we need to correct with 0 and skip heavy PP
@ calculations
134 RCL 23
135 X>0?
136 GTO 03
137 0
138 STO 23
@ we skip heavy PP computing because time in flat 
@ part of the leg is =0
139 GTO 02
@ now we calculate the flat portion of the leg
140▸LBL 03
@ new depth = leg depth
141 RCL 22
142 STO 00
@ Pio2 = (Prof*mtob + Patm - Pwvp)
@ Pio = Pio2 * N2
143 RCL 14
144 RCL 12
145 -
146 RCL 00
147 RCL 15
148 ×
149 +
150 STO 19
151 RCL 02
152 ×
153 STO 16
@ we calculate PP (Pio, t, Periode, C => B)
154 30.04501
155 XEQ "PPN2HE"
@ Pio = Pio2 * He
156 RCL 19
157 RCL 03
158 ×
159 STO 16
@ we calculate PP (Pio, t, Periode, C => B)
160 110.12501
161 XEQ "PPN2HE"
@ dtr = dtr + t2
162 RCL 23
163 STO+ 01
164 GTO "LOOP"
@ in case flat portio of leg is = 0
@ we just copy C => B due to heavy calculation in PP
165▸LBL 02
@ new depth = leg depth (should already be the case!)
166 RCL 22
167 STO 00
168 78.09301
169 XEQ "PPC2B"
170 158.17301
171 XEQ "PPC2B"
@ dtr = dtr + t2 (should be +0!)
172 RCL 23
173 STO+ 01
174 GTO "LOOP"
@ ==========================
@ part of the program that computes the end of the dive
@ ==========================
175▸LBL "STOPS"
@ we suppose ceiling is surface
176 0
177 STO 22
@ we start with gf = gfmin
178 RCL 07
179 STO 09
@ calculate the ceiling in Reg22 going from bottom
180 XEQ "CEILING"
@ tr = (proff - profi) / Vup
@ proff is first stop
@ profi is bottom depth
181 RCL 22
182 RCL 00
183 -
184 RCL 05
185 ÷
186 STO 18
@ R = Vup*mtob*N2
@ we are still ascendin with Vup speed
187 RCL 05
188 RCL 15
189 ×
190 RCL 24
191 ×
192 STO 17
@ Pio2 = (prof*mtob + Patm - Pwvp)
@ Pio = Pio2 * N2
@ Prof is bottom
193 RCL 14
194 RCL 12
195 -
196 RCL 00
197 RCL 15
198 ×
199 +
200 STO 19
201 RCL 24
202 ×
203 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
204 30.04501
205 XEQ "PPN2HEV"
@ R = Vup*mtob*He
@ we are still ascending with Vup speed
206 RCL 05
207 RCL 15
208 ×
209 RCL 25
210 ×
211 STO 17
@ Pio = Pio2 * He
@ Prof is bottom
212 RCL 19
213 RCL 25
214 ×
215 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
216 110.12501
217 XEQ "PPN2HEV"
@ dtr = dtr + tr
218 RCL 18
219 STO+ 01
@ we need to switch now current mix with new mix 
@ or the display will be wrong showing bottom mix
@ now that we have ascended, we switch to new deco mix
@ for flat leg
220 RCL 24
221 STO 02
222 RCL 25
223 STO 03
224 "ASCENT (R/S)"
225 XEQ "ZHSHOWV"
226 STOP
@ new depth is first stop depth for flat leg
227 RCL 22
228 STO 00
@ did we reach surface?
229 X=0?
230 GTO 31
@ we didn't reach surface we need to calculate stop time
@ first stop time is was is left from ascent rounded to
@ nearest minute
231 RCL 18
232 RCL 18
233 IP
234 -
235 STO 18
@ we compute now gfsteps using 
@ steps = int(palier/3)
@ gfsteps = (gfmax- gfmin)/steps or 0
236 RCL 00
237 3
238 ÷
239 IP
@ if steps = 0 we do not divide by steps
240 X=0?
241 GTO 22
242 RCL 08
243 RCL 07
244 -
245 X<>Y
246 ÷
247▸LBL 22
248 STO 10
@ loop on stops until stop <= 0 (surface is reached)
249▸LBL 30
250 RCL 00
@ did we reach surface, then we exit
251 X≤0?
252 GTO 31
@ Pio2 = (palier*mtob + Patm - Pwvp)
253 RCL 14
254 RCL 12
255 -
256 RCL 00
257 RCL 15
258 ×
259 +
260 STO 19
@ t2 -= tr 
@ we remove from first minute of deco time spent 
@ ascending to the stop
261 RCL 18
262 +/-
263 STO 23
@ Palier2 = palier for the +1minute loop 
264 RCL 00
265 STO 22
@ gf += gfstep
266 RCL 10
267 STO+ 09
@ loop did we change deco stop adding +1minute
@ in computing
268▸LBL 40
269 RCL 00
270 RCL 22
@ did we change stop depth?
@ we get out of the "LBL 40" loop
271 X≠Y?
272 GTO 41
@ we add +1minute to stop time
273 1
274 STO+ 23
@ Pio = Reg19*N2
275 RCL 19
276 RCL 02
277 ×
278 STO 16
@ we compute PP with one more minute at stop
@ we compute PP (Pio, t, Periode, C => B)
279 30.04501
280 XEQ "PPN2HE"
@ Pio = Reg19*He
281 RCL 19
282 RCL 03
283 ×
284 STO 16
@ we compute PP with one more minute at stop
@ we compute PP (Pio, t, Periode, C => B)
285 110.12501
286 XEQ "PPN2HE"
287 0
288 STO 22
289 XEQ "CEILING"
290 RCL 22
291 RCL 00
292 3
293 -
@ did the new ceiling > current depth +3m ?
@ in that case new ceiling is current - 3m (Reg22)
294 X<Y?
295 X<>Y
296 STO 22
@ we loop for one more minute?
297 GTO 40
@ we reached enought time to go to next stop
298▸LBL 41
@ DTR = DTR + t2
299 RCL 23
300 STO+ 01
301 RCL 18
302 STO+ 23
303 "STOP (R/S)"
304 XEQ "ZHSHOWP"
305 STOP
@ are we requesting a new deco mix beetween stops?
@ new deco mix requested with X=0
306 X≠0?
307 GTO 42
@ new mix requested
308 R↓
309 STO 21
@ the HE% part is just the frational part
310 FP
311 STO 25
@ now we compute the N22% part
@ N2 = (100 - O2)/100 - HE2%
@ we start at N22% = 100%
312 100
@ we retreive O2 part and compute the %
313 RCL 21
314 IP
315 -
316 100
317 ÷
@ we retreive now HE2%
318 RCL 25
319 -
320 STO 24
@ we continue to next stop
321▸LBL 42
@ tr = (palier2 - current) / Vpalier
322 RCL 22
323 RCL 00
324 -
325 RCL 06
326 ÷
327 STO 18
@ R = Vpalier*mtob*N2
@ mix is still the last on ascent one before swithing
328 RCL 06
329 RCL 15
330 ×
331 RCL 02
332 ×
333 STO 17
@ Pio is still ok from last calculation
@ depth for Pio is last stop
334 RCL 19
335 RCL 02
336 ×
337 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
338 30.04501
339 XEQ "PPN2HEV"
@ R = Vpalier*mtob*He
@ mix is still the last on ascent one before swithing
340 RCL 06
341 RCL 15
342 ×
343 RCL 03
344 ×
345 STO 17
@ Pio = Reg19*He
346 RCL 19
347 RCL 03
348 ×
349 STO 16
@ we calculate then PP during ascent/descend
@ PP (Pio, tr, R, Periode, B => C)
350 110.12501
351 XEQ "PPN2HEV"
@ now new mix will be used
352 RCL 24
353 STO 02
354 RCL 25
355 STO 03
@ new depth is current stop
356 RCL 22
357 STO 00
@ did we surface => end
358 X=0?
359 GTO 31
@ we didn't surface we add ascent to stop in run time
360 RCL 18
361 STO+ 01
@ loop
362 GTO 30
@ end of the dive, we reched surface
363▸LBL 31
@ we reached surface, depth = 0, time leg = 0
364 "SURFACE ↑ (R/S)"
365 0
366 STO 22
367 STO 00
368 STO 23
369 XEQ "ZHSHOW"
370 STOP
@ before looping to surface
@ we put the DTR = 0
@ and reset mix to surface air mix
371 0
372 STO 01
373 STO 18
374 STO 25
375 STO 03
376 RCL 13
377 STO 24
378 STO 02
379 "SURFACE (?)"
380 GTO "LOOP"
381 END
===============================================

Code: Select all

00 { 554-Byte Prgm }
01▸LBL "ZHTOOLS"
@ compute PP for N2 or He during horizontal dive
@ Index in X
@ Reg16 Pio
02▸LBL "PPN2HE"
03 STO 28
04 48
05 +
06 STO 26
07 16
08 +
09 STO 27
10▸LBL 50
11 RCL IND 28
12 RCL 23
13 ×
14 +/-
15 E^X
16 1
17 -
18 RCL IND 27
19 RCL 16
20 -
21 ×
22 RCL IND 27
23 +
24 STO IND 26
25 1
26 STO+ 26
27 STO+ 27
28 ISG 28
29 GTO 50
30 RTN
@ compute PP for N2 or He during ascent/descent dive
@ Index in X
@ Reg16 Pio
@ Reg17 R
@ Reg18 tr
31▸LBL "PPN2HEV"
32 STO 28
33 48
34 +
35 STO 27
36 16
37 +
38 STO 26
39▸LBL 60
40 RCL 16
41 RCL IND 27
42 -
43 RCL 17
44 RCL IND 28
45 ÷
46 -
47 RCL IND 28
48 RCL 18
49 ×
50 +/-
51 E^X
52 ×
53 +/-
54 RCL 16
55 +
56 RCL 18
57 RCL IND 28
58 1/X
59 -
60 RCL 17
61 ×
62 +
63 STO IND 26
64 1
65 STO+ 26
66 STO+ 27
67 ISG 28
68 GTO 60
69 RTN
70▸LBL "PPB2C"
71 STO 28
72 16
73 +
74 STO 27
75▸LBL 70
76 RCL IND 28
77 STO IND 27
78 1
79 STO+ 27
80 ISG 28
81 GTO 70
82 RTN
83▸LBL "PPC2B"
84 STO 28
85 16
86 +
87 STO 27
88▸LBL 80
89 RCL IND 27
90 STO IND 28
91 1
92 STO+ 27
93 ISG 28
94 GTO 80
95 RTN
@ ===========================================
@ we compute ceiling first for N2 then for He
@ ===========================================
@ depending on Index in X
@ Index in X
@ Reg09 gf
@ Reg14 Patm 
@ Reg15 mtob
@ Reg22 actual/found ceiling (return value)
96▸LBL "CEILING"
@ we compute the ceiling using Buhlmann equation
@ extended with gradient factors by Erik Baker
97 XEQ 10
@ we have the ceiling in PROF2
@ we first check if we are near surface
98 RCL 11
99 RCL 22
100 X<Y?
101 GTO 12
102 3
103 ÷
104 RCL 11
105 +
106 IP
107 1
108 +
109 3
110 ×
111 GTO 13
112▸LBL 12
113 0
114▸LBL 13
115 STO 22
116 RTN
117▸LBL 10
@ index I (reg28) is N2A
118 46.06101
119 STO 28
@ index J (reg27) is HEA
120 126.14101
121 STO 27
@ loop on all compartiments
122▸LBL 11
@ k (Reg26) = P = PPN2 +PPHE
@ we retreive PBN2b (BN2)
123 RCL 28
124 32
125 +
@ PPN2 (Reg20)
126 RCL IND ST X
127 STO 20
@ P = PPN2
128 STO 26
@ we retreive PBHEb (BHE)
129 RCL 27
130 32
131 +
@ PPHE (Reg21)
132 RCL IND ST X
133 STO 21
@ P = P + PPHE
134 STO+ 26
@ A = (PPN2 * N2A + PPHE * HEA) / P
135 RCL IND 28
136 RCL 20
137 ×
138 RCL IND 27
139 RCL 21
140 ×
141 +
142 RCL 26
143 ÷
@ we keep A in stack
@ B = (PPN2 * N2B + PPHE * HEB) / P
144 RCL 28
145 16
146 +
147 RCL IND ST X
@ we remove the index
148 X<>Y
149 R↓
150 RCL 20
151 ×
152 RCL 27
153 16
154 +
155 RCL IND ST X
@ we remove the index
156 X<>Y
157 R↓
158 RCL 21
159 ×
160 +
161 RCL 26
162 ÷
@ Reg21 is now B (in stack at X)
163 STO 21
164 R↓
@ Reg20 is now A (in stack at Y)
165 STO 20
@ compute big Erik baker formula
166 RCL 26
167 RCL 20
168 RCL 09
169 ×
170 -
171 RCL 09
172 RCL 21
173 ÷
174 1
175 +
176 RCL 09
177 -
178 ÷
179 RCL 14
180 -
181 RCL 15
182 ÷
@ did we find a greater ceiling?
@ if yes, we must store it
183 RCL 22
184 X<Y?
185 X<>Y
186 STO 22
187 1
188 STO+ 27
189 ISG 28
190 GTO 11
191 RTN
192▸LBL "ZHSHOWV"
193 RCL 18
194 1ᴇ3
195 ÷
196 RCL 22
197 +
198 STO 28
199 RCL 18
200 IP
201 STO 27
202 RCL 18
203 FP
204 60
205 ×
206 100
207 ÷
208 STO+ 27
209 GTO 30
210▸LBL "ZHSHOW"
211 RCL 23
212 1ᴇ3
213 ÷
214 RCL 00
215 +
216 STO 28
217 RCL 23
218 IP
219 STO 27
220 RCL 23
221 FP
222 60
223 ×
224 100
225 ÷
226 STO+ 27
227 GTO 30
228▸LBL "ZHSHOWP"
@ I = dd.mmm = stop.time
229 RCL 23
230 1ᴇ3
231 ÷
232 RCL 00
233 +
234 STO 28
@ J = time reel sans la remontee pour palier
235 RCL 23
236 RCL 18
237 -
238 IP
239 STO 27
240 RCL 23
241 RCL 18
242 -
243 FP
244 60
245 ×
246 100
247 ÷
248 STO+ 27
249▸LBL 30
@ we start with 100% O2
250 100
@ we retreive now the N2 part
251 RCL 02
252 100
253 ×
254 IP
255 -
@ we retreive now the HE part
256 RCL 03
257 100
258 ×
259 IP
260 -
@ we add the fractional part of HE%
261 RCL 03
262 +
263 STO 21
264 RCL 27
265 RCL 01
266 RCL 21
267 RCL 28
268 RTN
269 END
===============================================

Code: Select all

00 { 1284-Byte Prgm }
01▸LBL "ZHINIT"
100
XEQ PSIZE
02 FIX 03
03 0
04 STO 00
05 STO 01
06 STO 18
07 STO 03
08 STO 22
09 STO 23
10 STO 25
11 0.7902
12 STO 02
13 STO 24
14 STO 13
15 20
16 STO 04
17 10
18 +/-
19 STO 05
20 STO 06
21 0.3
22 STO 07
23 0.85
24 STO 08
25 1ᴇ-6
26 STO 11
27 0.0627
28 STO 12
29 1.01325
30 STO 14
31 0.09985
32 STO 15
33 0
34 STO 26
35 STO 27
36 STO 28
37 30.04501
38 STO 29
39 5
40 STO IND 29
41 ISG 29
42 8
43 STO IND 29
44 ISG 29
45 12.5
46 STO IND 29
47 ISG 29
48 18.5
49 STO IND 29
50 ISG 29
51 27
52 STO IND 29
53 ISG 29
54 38.3
55 STO IND 29
56 ISG 29
57 54.3
58 STO IND 29
59 ISG 29
60 77
61 STO IND 29
62 ISG 29
63 109
64 STO IND 29
65 ISG 29
66 146
67 STO IND 29
68 ISG 29
69 187
70 STO IND 29
71 ISG 29
72 239
73 STO IND 29
74 ISG 29
75 305
76 STO IND 29
77 ISG 29
78 390
79 STO IND 29
80 ISG 29
81 498
82 STO IND 29
83 ISG 29
84 635
85 STO IND 29
@ we store LN(2)/HALF_TIME rather than half_time
86 30.04501
87 STO 29
88 2
89 LN
90 STO 28
91▸LBL 00
92 RCL 28
93 RCL IND 29
94 ÷
95 STO IND 29
96 ISG 29
97 GTO 00
98 46.06101
99 STO 29
100 1.1696
101 STO IND 29
102 ISG 29
103 1
104 STO IND 29
105 ISG 29
106 0.8618
107 STO IND 29
108 ISG 29
109 0.7562
110 STO IND 29
111 ISG 29
112 0.6667
113 STO IND 29
114 ISG 29
115 0.56
116 STO IND 29
117 ISG 29
118 0.4947
119 STO IND 29
120 ISG 29
121 0.45
122 STO IND 29
123 ISG 29
124 0.4187
125 STO IND 29
126 ISG 29
127 0.3798
128 STO IND 29
129 ISG 29
130 0.3497
131 STO IND 29
132 ISG 29
133 0.3223
134 STO IND 29
135 ISG 29
136 0.285
137 STO IND 29
138 ISG 29
139 0.2737
140 STO IND 29
141 ISG 29
142 0.2523
143 STO IND 29
144 ISG 29
145 0.2327
146 STO IND 29
147 62.07701
148 STO 29
149 0.5578
150 STO IND 29
151 ISG 29
152 0.6514
153 STO IND 29
154 ISG 29
155 0.7222
156 STO IND 29
157 ISG 29
158 0.7825
159 STO IND 29
160 ISG 29
161 0.8126
162 STO IND 29
163 ISG 29
164 0.8434
165 STO IND 29
166 ISG 29
167 0.8693
168 STO IND 29
169 ISG 29
170 0.891
171 STO IND 29
172 ISG 29
173 0.9092
174 STO IND 29
175 ISG 29
176 0.9222
177 STO IND 29
178 ISG 29
179 0.9319
180 STO IND 29
181 ISG 29
182 0.9403
183 STO IND 29
184 ISG 29
185 0.9477
186 STO IND 29
187 ISG 29
188 0.9544
189 STO IND 29
190 ISG 29
191 0.9602
192 STO IND 29
193 ISG 29
194 0.9653
195 STO IND 29
196 78.09301
197 STO 29
198 RCL 14
199 RCL 12
200 -
201 RCL 13
202 ×
203▸LBL 99
204 STO IND 29
205 ISG 29
206 GTO 99
207 94.10901
208 STO 29
209 0
210▸LBL 98
211 STO IND 29
212 ISG 29
213 GTO 98
214 110.12501
215 STO 29
216 1.88
217 STO IND 29
218 ISG 29
219 3.02
220 STO IND 29
221 ISG 29
222 4.72
223 STO IND 29
224 ISG 29
225 6.99
226 STO IND 29
227 ISG 29
228 10.21
229 STO IND 29
230 ISG 29
231 14.48
232 STO IND 29
233 ISG 29
234 20.53
235 STO IND 29
236 ISG 29
237 29.11
238 STO IND 29
239 ISG 29
240 41.20
241 STO IND 29
242 ISG 29
243 55.19
244 STO IND 29
245 ISG 29
246 70.69
247 STO IND 29
248 ISG 29
249 90.34
250 STO IND 29
251 ISG 29
252 115.29
253 STO IND 29
254 ISG 29
255 147.42
256 STO IND 29
257 ISG 29
258 188.24
259 STO IND 29
260 ISG 29
261 240.03
262 STO IND 29
@ we store LN(2)/HALF_TIME rather than half_time
263 110.12501
264 STO 29
265 2
266 LN
267 STO 28
268▸LBL 01
269 RCL 28
270 RCL IND 29
271 ÷
272 STO IND 29
273 ISG 29
274 GTO 01
275 126.14101
276 STO 29
277 1.6189
278 STO IND 29
279 ISG 29
280 1.3830
281 STO IND 29
282 ISG 29
283 1.1919
284 STO IND 29
285 ISG 29
286 1.0458
287 STO IND 29
288 ISG 29
289 0.9220
290 STO IND 29
291 ISG 29
292 0.8205
293 STO IND 29
294 ISG 29
295 0.7305
296 STO IND 29
297 ISG 29
298 0.6502
299 STO IND 29
300 ISG 29
301 0.5950
302 STO IND 29
303 ISG 29
304 0.5545
305 STO IND 29
306 ISG 29
307 0.5333
308 STO IND 29
309 ISG 29
310 0.5189
311 STO IND 29
312 ISG 29
313 0.5181
314 STO IND 29
315 ISG 29
316 0.5176
317 STO IND 29
318 ISG 29
319 0.5172
320 STO IND 29
321 ISG 29
322 0.5119
323 STO IND 29
324 142.15701
325 STO 29
326 0.4770
327 STO IND 29
328 ISG 29
329 0.5747
330 STO IND 29
331 ISG 29
332 0.6527
333 STO IND 29
334 ISG 29
335 0.7223
336 STO IND 29
337 ISG 29
338 0.7582
339 STO IND 29
340 ISG 29
341 0.7957
342 STO IND 29
343 ISG 29
344 0.8279
345 STO IND 29
346 ISG 29
347 0.8553
348 STO IND 29
349 ISG 29
350 0.8757
351 STO IND 29
352 ISG 29
353 0.8903
354 STO IND 29
355 ISG 29
356 0.8997
357 STO IND 29
358 ISG 29
359 0.9073
360 STO IND 29
361 ISG 29
362 0.9122
363 STO IND 29
364 ISG 29
365 0.9171
366 STO IND 29
367 ISG 29
368 0.9217
369 STO IND 29
370 ISG 29
371 0.9267
372 STO IND 29
373 158.17301
374 STO 29
375 0
376▸LBL 97
377 STO IND 29
378 ISG 29
379 GTO 97
380 174.18901
381 STO 29
382 0
383▸LBL 96
384 STO IND 29
385 ISG 29
386 GTO 96
387 RTN
388 END
=================================================
Sincèrement, Sincerely, 73,
Boubker

2xDM15L, DM41L, DM42 SN#00855 (+one lost during shipping), DM41X #00707
TI-89 titanium, CASIO fx-cg50 (to play with micropython)

There are three kinds of people in the world: those who know math and those who don't.
Post Reply