-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathBEURS.BAS
581 lines (581 loc) · 22.3 KB
/
BEURS.BAS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
10 GOTO 1000:REM Basicode-2 subroutines
20 CLEAR:IN$=" ":SR=0:SR$="":CT=0:CN=0:OHT%=80:OVT%=24
22 KEY OFF:SCREEN 0:WIDTH OHT%:COLOR 7,0,0:CLS:RANDOMIZE TIMER*100
29 GOTO 1010
100 CLS:RETURN
110 GOSUB 111:LOCATE OVE%+1,OHO%+1:RETURN
111 OVE%=INT(VE):OHO%=INT(HO)
112 IF OVE%<0 THEN OVE%=0 ELSE IF OVE%>=OVT% THEN OVE%=OVT%-1
113 IF OHO%<0 THEN OHO%=0 ELSE IF OHO%>=OHT% THEN OHO%=OHT%-1
114 RETURN
120 HO=POS(0)-1:VE=CSRLIN-1:RETURN
200 IN$=INKEY$:RETURN
210 IN$=INPUT$(1):RETURN
250 BEEP:RETURN
260 RV=RND:RETURN
270 FR=FRE(""):RETURN
300 SR$=MID$(STR$(ABS(SR)),2):IF LEFT$(SR$,1)="." THEN SR$="0"+SR$
301 IF SR<0 THEN SR$="-"+SR$
302 RETURN
310 O#=ABS(SR)+.5*10^-CN:O!=INT(O#):O#=1+O#-O!:O$=""
311 IF CN THEN O$="."+STRING$(CN,48):IF O#>1 THEN MID$(O$,1)=MID$(STR$(O#),3)
312 O$=MID$(STR$(O!),2)+O$:IF VAL(O$)>0 AND SR<0 THEN O$="-"+O$
313 IF LEN(O$)<=CT THEN SR$=SPACE$(CT-LEN(O$))+O$:RETURN
314 SR$=STRING$(CT,42):RETURN
350 LPRINT SR$;:RETURN
360 LPRINT:RETURN
1000 A = 200: GOTO 20: REM BEURS
1010 GOSUB 20400: GOSUB 20000: GOSUB 20200: GOSUB 20590
1020 GOSUB 22850: GOSUB 23880
1030 IF KI = 9 THEN GOSUB 21590: END
1040 IF WE = 10 THEN GOSUB 21270: WE = 0: GOTO 1180
1050 IF KI = 1 THEN GOSUB 20590: GOTO 1180
1060 IF KI = 2 THEN GOSUB 20890: GOTO 1180
1090 IF KI = 5 THEN GOSUB 23160: GOTO 1180
1100 IF KI = 6 THEN GOSUB 23270: GOTO 1180
1110 IF KI = 7 THEN GOSUB 23380: GOTO 1180
1120 IF KI = 8 THEN GOSUB 23620: GOTO 1180
1130 GOSUB 260: REM KANS OP SPEKULATIE ?
1140 IF RV < .09 THEN GOSUB 21740: GOTO 1020
1150 IF KI = 3 THEN GOSUB 24460
1160 IF KI = 4 THEN GOSUB 24540
1170 GOSUB 20890
1180 IF D = 14 THEN GOSUB 21470: D = 8
1190 IF SO$ = "STOP" THEN GOSUB 21590: GOTO 1230
1200 D = D + 1: WE = WE + 1
1210 IF FA = 1 THEN GOSUB 24620: GOTO 1230
1220 GOTO 1020
1230 END
20000 REM INFO
20010 GOSUB 100: PRINT"BEURSSPEL": PRINT
20020 PRINT"Met dit programma kan Uw computer"
20030 PRINT"contact maken met de computer van de"
20040 PRINT"beurs te NEW-YORK , USA.": PRINT
20050 PRINT"Als U eenmaal contact heeft met deze"
20060 PRINT"computer , kunt U gaan handelen in"
20070 PRINT"aandelen , waarbij U steeds kunt"
20080 PRINT"terugvallen op de laatste gegevens"
20090 PRINT"uit NEW-YORK.": PRINT
20100 PRINT"Natuurlijk is het de bedoeling om met"
20110 PRINT"de handel een zo groot mogelijke winst"
20120 PRINT"te maken."
20130 PRINT"Een belangrijk hulpmiddel daarbij is de"
20140 PRINT"Aandelen Index , die het prijspeil van"
20150 PRINT"de aandelen aangeeft en het verloop"
20160 PRINT"daarvan.": PRINT
20170 PRINT"Per transaktie kunt U maximaal 9 aan-"
20180 PRINT"delen van elk soort kopen of verkopen !"
20190 GOSUB 20370: RETURN
20200 REM CONTACT NEW-YORK
20210 GOSUB 100: PRINT"VERBINDING": PRINT
20220 PRINT"Uw computer zal nu contact gaan maken"
20230 PRINT"met de computer in NEW-YORK :": PRINT
20240 TE$ = " 09 - 011 212 72615320": MO = MO * 15
20250 GOSUB 20320: MO = MH: PRINT: GOSUB 20560
20260 TE$ = "NEW-YORK STOCK OPTION-DATA SERVICE"
20270 GOSUB 20320: TE$ = "ONE MOMENT PLEASE ...."
20280 GOSUB 20320: TE$ = "CALL IDENTIFIED .. DUTCH"
20290 GOSUB 20560
20300 GOSUB 20320: TE$ = "EEN OGENBLIK A.U.B. ...."
20310 GOSUB 20320: GOSUB 20560: GOSUB 20370: RETURN
20320 REM MODEM PRINT
20330 FOR II = 1 TO LEN(TE$)
20340 PRINT MID$(TE$, II, 1);
20350 FOR JJ = 1 TO MO: NEXT JJ: REM VERTRAGING
20360 NEXT II: PRINT: RETURN
20370 REM TOETS EEN TOETS
20380 HO = 12: VE = 23: GOSUB 110: PRINT"DRUK EEN TOETS.";
20390 GOSUB 210: RETURN
20400 REM INITIALISATIE
20410 DIM A$(5), S(5), V(5), K(5), T(5), Q(5)
20420 DIM VH(5, 15), KH(5, 15)
20430 D = 11: WE = 1: AI = 675: CT = 10: CN = 2: VE = 0: IN$ = ""
20440 BR = 5000: RB = 3.6: B = 5000: RE = 1.34
20450 MK = 500: FA = 0
20460 SB = BR: SC = B: AV = 0: VA = 0: X = 0: Z = 0: A = 0: T = 1
20470 D$ = "ABCCBSIBMLBJRCA": M$ = "140200100150085": SO$ = ""
20480 MO = 5: ZC = 1: RT$ = "RETURN"
20490 MH = MO
20500 FOR I = 1 TO 5
20510 A$(I) = MID$(D$, 3 * (I - 1) + 1, 3)
20520 S(I) = VAL(MID$(M$, 3 * (I - 1) + 1, 3))
20530 V(I) = S(I): KH(I, 15) = S(I): K(I) = 0
20540 GOSUB 260: S(I) = S(I) + INT(RV * 30)
20550 NEXT I: RETURN
20560 REM WACHTLUS
20570 FOR WL = 1 TO MO * 100: NEXT WL
20580 RETURN
20590 REM BEURSOVERZICHT
20600 GOSUB 100: TE$ = "BEURSOVERZICHT": GOSUB 20320: PRINT
20610 TE$ = "HANDEL IS MOGELIJK IN DE VOLGENDE"
20620 GOSUB 20320: TE$ = "AANDELEN :": GOSUB 20320
20630 PRINT
20640 TE$ = "ABC : AMERICAN BANKRUPT CO."
20650 GOSUB 20320
20660 TE$ = "CBS : CENSURED BOOK SHOP"
20670 GOSUB 20320
20680 TE$ = "IBM : INT.BALLISTIC MISSILES"
20690 GOSUB 20320
20700 TE$ = "LBJ : LICHTENSTEIN BUMU.JOKE"
20710 GOSUB 20320
20720 TE$ = "RCA : RED CROSS OF AMERICA"
20730 GOSUB 20320: PRINT
20740 TE$ = "LET OP : KOERSEN WIJZIGEN VOORTDUREND."
20750 GOSUB 20320: PRINT
20760 TE$ = "VOOR IEDERE TRANSAKTIE REKENT DE"
20770 GOSUB 20320: SR = RE: CT = 4: GOSUB 310
20780 TE$ = "COMPUTER " + SR$ + " % ADMINISTRATIE KOSTEN."
20790 GOSUB 20320: PRINT
20800 SR = RB: GOSUB 310: CT = 10
20810 TE$ = "DE BANK GEEFT OVER UW TEGOED " + SR$ + " %"
20820 GOSUB 20320: TE$ = "RENTE.": GOSUB 20320: PRINT
20830 SR = SC: GOSUB 310: TE$ = "STARTKAPITAAL : $" + SR$
20840 GOSUB 20320
20850 SR = SB: GOSUB 310: TE$ = " + BANKTEGOED : $" + SR$
20860 GOSUB 20320: SR = SB + SC: GOSUB 310
20870 TE$ = "TOTAAL : $" + SR$: GOSUB 20320
20880 GOSUB 20370: RETURN
20890 REM KOERSOVERZICHT
20900 GOSUB 100: TE$ = "KOERSOVERZICHT": GOSUB 20320
20910 PRINT: TE$ = "AANDEEL PRIJS WAS TREND BEZIT"
20920 GOSUB 20320: PRINT
20930 CN = 0: CT = 5: FOR I = 1 TO 5
20940 TE$ = " " + A$(I) + " -> ": SR = S(I): GOSUB 310
20950 TE$ = TE$ + SR$ + " ": SR = V(I): GOSUB 310
20960 TE$ = TE$ + SR$ + " ": SR = K(I): GOSUB 310
20962 IF S(I) < V(I) THEN TE$ = TE$ + "-"
20964 IF S(I) = V(I) THEN TE$ = TE$ + "="
20966 IF S(I) > V(I) THEN TE$ = TE$ + "+"
20970 TE$ = TE$ + " " + SR$: GOSUB 20320
20980 NEXT I: CN = 2: CT = 10: PRINT
20990 AV = AI: AI = 0: FOR I = 1 TO 5
21000 AI = AI + S(I): NEXT I
21010 VA = AI - AV: SR = AI: GOSUB 300
21020 TE$ = "AANDELEN INDEX NEW-YORK : " + SR$
21030 GOSUB 20320
21040 SR = VA: GOSUB 300
21050 TE$ = "VERANDERING T.O.V. GISTEREN : " + SR$
21060 GOSUB 20320: PRINT
21070 W = 0: FOR I = 1 TO 5
21080 W = W + K(I) * S(I)
21090 NEXT I
21100 X = W + B: SR = B: GOSUB 310
21110 TE$ = " BAAR-GELD : $" + SR$: GOSUB 20320
21120 SR = W: GOSUB 310
21130 TE$ = " WAARDE AANDELEN : $" + SR$
21140 GOSUB 20320: SR = BR: GOSUB 310
21150 TE$ = " BANK TEGOED : $" + SR$
21160 GOSUB 20320
21170 SR = X + BR: GOSUB 310
21180 IF SR < MK THEN FA = 1
21182 TE$ = " ------------"
21184 GOSUB 20320
21190 TE$ = " TOTAAL KAPITAAL : $" + SR$: GOSUB 20320
21200 SR = X + BR - SB - SC
21210 IF SR >= 0 THEN TE$ = " WINST "
21220 IF SR < 0 THEN TE$ = " VERLIES"
21230 SR = ABS(SR): GOSUB 310
21240 TE$ = TE$ + " : $" + SR$: GOSUB 20320
21250 GOSUB 20370: IF KI = 2 THEN GOSUB 21830
21260 RETURN
21270 REM WEEKEND
21280 GOSUB 100: TE$ = "MEDEDELING": GOSUB 20320: PRINT
21290 TE$ = "DE BEURS IS GEDURENDE HET WEEKEND"
21300 GOSUB 20320
21310 TE$ = "GESLOTEN.U BENT AANSTAANDE MAANDAG"
21320 GOSUB 20320
21330 TE$ = "WEER WELKOM."
21340 GOSUB 20320: PRINT
21350 TE$ = "U KUNT DE VERBINDING BEEINDIGEN DOOR"
21360 GOSUB 20320
21370 TE$ = "'STOP' IN TE GEVEN,GEVOLGD DOOR": GOSUB 20320
21380 TE$ = RT$ + ".": GOSUB 20320
21390 TE$ = "BIJ IEDER ANDER ANTWOORD BLIJFT DE"
21400 GOSUB 20320
21410 TE$ = "VERBINDING BEHOUDEN TOT DE BEURS WEER"
21420 GOSUB 20320
21430 TE$ = "OPEN GAAT.": GOSUB 20320: PRINT
21440 INPUT IN$: IF IN$ = "stop" THEN IN$ = "STOP"
21450 SO$ = IN$: RETURN
21460 REM DIVIDEND
21470 GOSUB 100: TE$ = "DIVIDEND UITKERING"
21480 GOSUB 20320: PRINT: TT = 0
21490 FOR I = 1 TO 5: GOSUB 260
21500 DV = (RV * 6) + 1: DV = INT(DV * 100) / 100
21510 AR = DV * K(I): IF AR = 0 THEN 21560
21520 TE$ = "U KRIJGT OVER UW AANDELEN " + A$(I)
21530 GOSUB 20320: SR = AR: GOSUB 310
21540 TE$ = "EEN DIVIDEND VAN : $" + SR$
21550 GOSUB 20320: PRINT: B = B + AR: TT = TT + AR
21560 NEXT I: IF TT = 0 THEN 21582
21562 SR = TT: GOSUB 310
21570 TE$ = "TOTAAL : $" + SR$: GOSUB 20320
21580 GOSUB 20370: RETURN
21582 TE$ = "U BEZIT GEEN AANDELEN EN U ONTVANGT DUS"
21584 GOSUB 20320: TE$ = "GEEN DIVIDEND.": GOSUB 20320
21586 GOSUB 20370: RETURN
21590 REM BANK BETAALT NIET
21600 GOSUB 100: TE$ = "BANK": GOSUB 20320: PRINT
21610 GOSUB 260: SR = INT(RV * 1000) + 50000
21612 CT = 5: CN = 0: GOSUB 310: CT = 10: CN = 2
21620 TE$ = "BETREFT CHEQUE NR." + SR$: GOSUB 20320: PRINT
21630 TE$ = "DE CPU-BANK NEW-YORK BETAALT TEGEN DEZE"
21640 GOSUB 20320
21650 TE$ = "CHEQUE ONDER GEEN VOORWAARDE HET"
21660 GOSUB 20320: SR = BR + B: GOSUB 310
21670 TE$ = "BEDRAG VAN $" + SR$ + ".": GOSUB 20320: PRINT
21680 TE$ = " ONDERTEKEND :"
21690 GOSUB 20320: PRINT
21700 TE$ = " DE COMPUTER.": GOSUB 20320
21710 PRINT: PRINT
21720 PRINT"NEW-YORK heeft de verbinding verbroken."
21730 PRINT: PRINT: RETURN
21740 REM SPEKULATIE
21750 GOSUB 100: TE$ = "SPEKULATIE DREIGING"
21760 GOSUB 20320: PRINT: PRINT
21770 TE$ = "OM SPEKULATIE TE VOORKOMEN WORDEN"
21780 GOSUB 20320: PRINT
21790 TE$ = "ALLE AKTIES TIJDELIJK GESCHORST."
21800 GOSUB 20320
21810 TE$ = " -------------------"
21820 GOSUB 20320: GOSUB 20370: RETURN
21830 REM KOERSEN
21840 GOSUB 100: Z = Z + 1: IF Z = 6 THEN Z = 0
21845 T = T + 1: IF T = 16 THEN T = 15
21850 IF Z <> 0 THEN 21870
21860 FOR I = 1 TO 5: GOSUB 260: T(I) = INT(RV + .5): NEXT I
21870 FOR I = 1 TO 5: V(I) = S(I)
21880 IF T(I) = 0 THEN 21940
21890 GOSUB 260: ZZ = RV: GOSUB 260
21900 IF ZZ <= .5 THEN S(I) = S(I) - ((RV * .5) * S(I)) + 1
21910 IF ZZ > 5 THEN S(I) = S(I) + ((RV * .1) * S(I) + 1)
21920 IF S(I) < 0 THEN GOSUB 260: S(I) = S(I) + RV + 5
21930 GOTO 21980
21940 GOSUB 260: ZZ = RV: GOSUB 260
21950 IF ZZ <= .5 THEN S(I) = S(I) + ((RV * .5) * S(I)) + 1
21960 IF ZZ > .5 THEN S(I) = S(I) - ((RV * .1) * S(I)) + 1
21970 IF S(I) < 0 THEN S(I) = S(I) + 6
21980 S(I) = INT(S(I)): Q(I) = 0
21990 FOR J = 1 TO 14: KH(I, J) = KH(I, J + 1): VH(I, J) = VH(I, J + 1)
22000 NEXT J: KH(I, 15) = S(I): VH(I, 15) = 0
22010 NEXT I: RETURN
22020 REM AANKOOP
22030 GOSUB 100: TE$ = "AANKOOP AANDELEN": GOSUB 20320: PRINT
22040 GOSUB 260: SR = V(I): GOSUB 310
22050 TE$ = A$(I) + " LAATSTE KOERS : $" + SR$
22060 GOSUB 20320
22070 SR = K(I): GOSUB 300
22080 TE$ = "BEZIT : " + SR$
22090 GOSUB 20320
22100 SR = B: GOSUB 310
22110 TE$ = "U HEEFT AAN CONTANTEN : $" + SR$
22120 GOSUB 20320: PRINT
22130 TE$ = "HOEVEEL WILT U AANKOPEN ? (0 - 9)"
22140 GOSUB 20320
22150 GOSUB 23930: Q = VAL(IN$)
22160 IF(IN$ < "0") OR(IN$ > "9") THEN Q = -1
22170 TE$ = IN$ + " ? 0 - 9 ...": GOSUB 120
22180 IF(Q < 0) OR(Q > 9) THEN GOSUB 250
22190 IF(Q < 0) OR(Q > 9) THEN GOSUB 20320: GOSUB 110: GOTO 22150
22200 TE$ = "AANKOOP : " + IN$ + " ": GOSUB 20320
22210 IF ZC = 0 THEN 22230
22220 GOSUB 23970: IF ZW = 0 THEN I = I - 1: GOTO 22520
22230 IF Q = 0 THEN 22470
22240 Q(I) = Q: GE = (RE * Q(I) * S(I)) / 100
22250 BB = Q(I) * S(I) + GE
22260 IF BB <= B THEN 22340
22270 UV = INT(100 * ABS(B - BB)) / 100
22280 TE$ = "U HEEFT NIET GENOEG CONTANTEN VOOR"
22290 GOSUB 20320
22300 TE$ = "DE AANKOOP VAN " + IN$ + ".": GOSUB 20320
22310 SR = UV: GOSUB 310
22320 TE$ = "U HEEFT $" + SR$ + " TE KORT. "
22330 GOSUB 20320: GOTO 22420
22340 GA = (RV * .5 * K(I) * Q(I)) / S(I)
22350 IF GA < .7 THEN 22440
22360 TE$ = "ER ZIJN GEEN " + IN$ + " AANDELEN MEER TE KOOP."
22370 GOSUB 20320: Q(I) = 0
22380 SR = INT(.7 * S(I) / (RV * .5 * K(I))): GOSUB 300
22390 TE$ = "MAXIMAAL TE KOOP : " + SR$ + " AANDELEN."
22400 IF SR = 0 THEN TE$ = "ALLE AANDELEN UITVERKOCHT."
22410 GOSUB 20320
22420 GOSUB 110: TE$ = " ": GOSUB 20320
22430 GOSUB 110: GOTO 22150
22440 B = B - BB
22460 K(I) = K(I) + Q(I)
22470 B = INT(B * 100) / 100: SR = B: GOSUB 310
22480 TE$ = "RESTERENDE CONTANTEN : $"
22490 TE$ = TE$ + SR$
22500 GOSUB 24120
22510 VE = VE + 2: GOSUB 110: GOSUB 20320
22520 GOSUB 20370: RETURN
22530 REM VERKOOP
22540 TE$ = "VERKOOP AANDELEN": GOSUB 100
22550 GOSUB 20320: PRINT: SR = V(I): GOSUB 310
22560 TE$ = A$(I) + " KOERS GISTEREN : $" + SR$
22570 GOSUB 20320: Q = 0
22580 SR = K(I): GOSUB 300: TE$ = "BEZIT : " + SR$
22590 GOSUB 20320: PRINT: A = K(I): IF A > 9 THEN A = 9: SR$ = "9"
22600 IF K(I) = 0 THEN 22810
22610 TE$ = "HOEVEEL WILT U VERKOPEN ? (0 - " + SR$ + ")"
22620 GOSUB 20320
22630 GOSUB 23930: Q = VAL(IN$)
22640 IF(IN$ < "0") OR(IN$ > SR$) THEN Q = -1
22650 TE$ = IN$ + " ? 0 - " + SR$ + " ...": GOSUB 120
22660 IF(Q < 0) OR(Q > A) THEN GOSUB 250
22670 IF(Q < 0) OR(Q > A) THEN GOSUB 20320: GOSUB 110: GOTO 22630
22680 TE$ = "VERKOOP : " + IN$ + " ": GOSUB 20320
22690 IF ZC = 0 THEN PRINT: GOTO 22710
22700 GOSUB 23970: IF ZW = 0 THEN I = I - 1: GOTO 22840
22710 IF Q = 0 THEN 22810
22760 Q(I) = -Q: GE = (RE * ABS(Q) * S(I)) / 100
22770 BB = Q * S(I) - GE
22780 B = B + BB: SR = BB: GOSUB 310
22790 TE$ = "DEZE AANDELEN BRENGEN $" + SR$ + " OP."
22800 GOSUB 20320: K(I) = K(I) - Q
22810 SR = B: GOSUB 310: PRINT
22820 TE$ = "U HEEFT AAN CONTANTEN : $" + SR$
22830 GOSUB 20320: GOSUB 20370
22840 RETURN
22850 REM MENU
22860 GOSUB 100: TE$ = "NEW YORK DATA-SERVICE": GOSUB 20320
22870 PRINT: TE$ = "U KUNT KIEZEN UIT :"
22880 GOSUB 20320: PRINT
22890 TE$ = " 1 BEURS OVERZICHT": GOSUB 20320
22900 TE$ = " 2 KOERS OVERZICHT": GOSUB 20320
22910 TE$ = " 3 AANKOOP AANDELEN": GOSUB 20320
22920 TE$ = " 4 VERKOOP AANDELEN": GOSUB 20320
22930 TE$ = " 5 KOERS HISTORIE": GOSUB 20320
22940 TE$ = " 6 KOOP HISTORIE": GOSUB 20320
22950 TE$ = " 7 GELD NAAR DE BANK": GOSUB 20320
22960 TE$ = " 8 GELD VAN DE BANK": GOSUB 20320
22970 TE$ = " 9 STOP": GOSUB 20320: PRINT
22980 IF ZC = 1 THEN TE$ = " C CONTROLE-VRAAG UITZETTEN"
22990 IF ZC = 0 THEN TE$ = " C CONTROLE-VRAAG AANZETTEN"
23000 GOSUB 20320: PRINT
23010 TE$ = "UW KEUZE A.U.B. ?": GOSUB 20320
23020 GOSUB 23930: IF(IN$ <> "C") AND(IN$ <> "c") THEN 23070
23030 IF ZC = 0 THEN ZC = 1: TE$ = "CONTROLE VRAAG AAN.": GOTO 23050
23040 ZC = 0: TE$ = "CONTROLE VRAAG UIT."
23050 PRINT" "
23060 GOSUB 20320: GOSUB 20370: GOTO 22850
23070 KI = VAL(IN$): IF(KI > 0) AND(KI <= 9) THEN 23100
23080 TE$ = IN$ + " ? 1 - 9 ...": GOSUB 250: GOSUB 20320
23090 HO = 0: VE = 17: GOSUB 110: GOTO 23020
23100 TE$ = "KEUZE : " + IN$ + " "
23110 GOSUB 20320
23120 IF ZC = 0 THEN GOSUB 20560: GOSUB 20560: GOTO 23150
23130 GOSUB 23970: VE = 17: GOSUB 110
23140 IF ZW = 0 THEN GOSUB 24120: GOSUB 24120: GOTO 23090
23150 RETURN
23160 REM KOERS HISTORIE
23170 GOSUB 100: TE$ = "KOERS HISTORIE": GOSUB 20320: PRINT
23180 TE$ = "": CN = 0: CT = 5: FOR I = 1 TO 5
23190 TE$ = TE$ + " " + A$(I): NEXT I
23200 GOSUB 20320: PRINT
23210 FOR J = 16 - T TO 15: TE$ = "": FOR I = 1 TO 5
23220 SR = KH(I, J): GOSUB 310
23230 TE$ = TE$ + " " + SR$: NEXT I
23240 GOSUB 20320: NEXT J: PRINT
23250 TE$ = "LAATSTE NOTERING ONDERAAN !!"
23260 GOSUB 20320: GOSUB 20370: GOSUB 21830: CN = 2: CT = 10: RETURN
23270 REM KOOP HISTORIE
23280 GOSUB 100: TE$ = "KOOP HISTORIE": GOSUB 20320: PRINT
23290 TE$ = "": CN = 0: CT = 5: FOR I = 1 TO 5
23300 TE$ = TE$ + " " + A$(I): NEXT I
23310 GOSUB 20320: PRINT
23320 FOR J = 16 - T TO 15: TE$ = "": FOR I = 1 TO 5
23330 SR = VH(I, J): GOSUB 310
23340 TE$ = TE$ + " " + SR$: NEXT I
23350 GOSUB 20320: NEXT J: PRINT
23360 TE$ = "LAATSTE CIJFERS ONDERAAN !!"
23370 GOSUB 20320: GOSUB 20370: GOSUB 21830: CN = 2: CT = 10: RETURN
23380 REM NAAR BANK
23390 GOSUB 100: TE$ = "STORTEN": GOSUB 20320: PRINT
23400 SR = B: GOSUB 310
23410 TE$ = "U HEEFT AAN CONTANTEN $" + SR$
23420 GOSUB 20320: PRINT
23430 TE$ = "HOEVEEL WILT U STORTEN ?": GOSUB 20320
23440 TE$ = "(GEEF BEDRAG GEVOLGD DOOR " + RT$ + ".)"
23450 GOSUB 20320
23460 PRINT" "
23470 GOSUB 120: VE = VE - 1: GOSUB 110
23480 INPUT BE: BE = INT(BE * 100) / 100: GOSUB 120: VE = VE - 1
23490 IF BE < 0 THEN TE$ = "DAT KAN NIET. ": GOSUB 20320
23500 IF BE < 0 THEN GOSUB 110: GOSUB 250: GOTO 23460
23510 IF BE > B THEN TE$ = "ZOVEEL HEEFT U NIET.": GOSUB 20320
23520 IF BE > B THEN GOSUB 110: GOSUB 250: GOTO 23460
23530 SR = BE: GOSUB 310
23540 TE$ = "U STORT $" + SR$ + " OP REKENING"
23550 PRINT" "
23560 GOSUB 20320: TE$ = "No. 847408604.": GOSUB 20320
23570 SR = RB: CT = 4: GOSUB 310: CT = 10: BR = BR + BE: B = B - BE
23580 TE$ = "U KRIJGT " + SR$ + " % RENTE"
23590 PRINT: GOSUB 20320: SR = BR: GOSUB 310
23600 TE$ = "OVER UW TEGOED VAN $" + SR$ + " .": GOSUB 20320
23610 GOSUB 20370: RETURN
23620 REM OPNEMEN
23630 GOSUB 100: TE$ = "OPNEMEN": GOSUB 20320: PRINT
23640 SR = BR: GOSUB 310
23650 TE$ = "OP UW REKENING STAAT $" + SR$
23660 GOSUB 20320: PRINT
23670 TE$ = "HOEVEEL WILT U OPNEMEN ?": GOSUB 20320
23680 TE$ = "(GEEF BEDRAG GEVOLGD DOOR " + RT$ + ".)"
23690 GOSUB 20320
23700 PRINT" "
23710 GOSUB 120: VE = VE - 1: GOSUB 110
23720 INPUT BE: BE = INT(BE * 100) / 100: GOSUB 120: VE = VE - 1
23730 IF BE < 0 THEN TE$ = "DAT KAN NIET. ": GOSUB 20320
23740 IF BE < 0 THEN GOSUB 110: GOSUB 250: GOTO 23700
23750 IF BE > BR THEN TE$ = "ZOVEEL HEEFT U NIET."
23760 IF BE > BR THEN GOSUB 20320: GOSUB 110
23770 IF BE > BR THEN GOSUB 250: GOTO 23700
23780 PRINT" "
23790 BR = BR - BE: B = B + BE
23800 SR = BE: GOSUB 310
23810 TE$ = "U NEEMT $" + SR$ + " OP VAN REKENING"
23820 GOSUB 20320: TE$ = "No. 847408604.": GOSUB 20320
23830 SR = RB: CT = 4: GOSUB 310: CT = 10
23840 TE$ = "U KRIJGT " + SR$ + " % RENTE"
23850 PRINT: GOSUB 20320: SR = BR: GOSUB 310
23860 TE$ = "OVER UW TEGOED VAN $" + SR$ + " .": GOSUB 20320
23870 GOSUB 20370: RETURN
23880 REM RENTE
23890 BE = RB / 25: BE = BE / 365: BE = BE + 1: BR = BR * BE: RETURN
23930 REM TOETS IN IN$
23940 GOSUB 210
23950 IF(IN$ >= "0") AND(IN$ <= "9") THEN RETURN
23952 IF(IN$ >= "a") AND(IN$ <= "z") THEN RETURN
23954 IF(IN$ >= "A") AND(IN$ <= "Z") THEN RETURN
23960 GOTO 23940
23970 REM ZEKER WETEN
23980 ZH = VE: ZI$ = IN$: PRINT
23990 GOSUB 120: GOSUB 24120: GOSUB 110
24000 TE$ = "IS DIT JUIST ? (J/N)": GOSUB 20320
24010 GOSUB 23930
24020 IF(IN$ = "J") OR(IN$ = "j") THEN ZW = 1: GOTO 24060
24030 IF(IN$ = "N") OR(IN$ = "n") THEN ZW = 0: GOTO 24060
24040 TE$ = IN$ + " ? J / N ...": GOSUB 250: GOSUB 20320
24050 VE = VE + 1: GOSUB 110: VE = VE - 1: GOTO 24010
24060 IF ZW = 1 THEN TE$ = "JA "
24070 IF ZW = 0 THEN TE$ = "NEE"
24080 TE$ = TE$ + " ": GOSUB 20320
24090 GOSUB 110
24100 IF ZW = 1 THEN GOSUB 24120: GOSUB 110
24110 VE = ZH: IN$ = ZI$: RETURN
24120 REM PRINT 3 REGELS
24130 PRINT" "
24140 PRINT" "
24150 PRINT" "
24160 RETURN
24170 REM KOOP MENU
24180 GOSUB 100: GOSUB 21830
24190 GOSUB 20320: PRINT
24200 TE$ = LEFT$(TE$, 8) + "VAN :": GOSUB 20320: PRINT
24210 TE$ = " 1 ABC (AMERICAN BANCRUPT CO.)"
24220 GOSUB 20320
24230 TE$ = " 2 CBS (CENSURED BOOK SHOP)"
24240 GOSUB 20320
24250 TE$ = " 3 IBM (INT.BALLISTIC MISSILES)"
24260 GOSUB 20320
24270 TE$ = " 4 LBJ (LICHTENSTEIN BUMU.JOKE)"
24280 GOSUB 20320
24290 TE$ = " 5 RCA (RED CROSS OF AMERICA)"
24300 GOSUB 20320
24310 TE$ = " 6 ALLE AANDELEN": GOSUB 20320
24320 TE$ = " 7 STOP": GOSUB 20320: PRINT
24330 TE$ = "UW KEUZE A.U.B. ?": GOSUB 20320
24340 GOSUB 23930: KI = VAL(IN$)
24350 IF(KI > 0) AND(KI < 8) THEN 24380
24360 TE$ = IN$ + " ? 1 - 7 ...": GOSUB 250: GOSUB 20320
24370 HO = 0: VE = 13: GOSUB 110: GOTO 24340
24380 TE$ = "KEUZE : " + IN$ + " ": GOSUB 20320
24390 IF ZC = 0 THEN GOSUB 20560: GOSUB 20560: GOTO 24450
24400 GOSUB 23970: VE = 13: GOSUB 110
24410 IF ZW = 0 THEN GOSUB 24120: GOSUB 24120: VE = 14
24420 IF ZW = 0 THEN GOSUB 110: GOTO 24340
24450 RETURN
24460 REM AANKOOP MENU
24470 TE$ = "AANKOOP AANDELEN": GOSUB 24170
24480 IF KI > 5 THEN 24500
24490 I = KI: FOR J = 1 TO 5: Q(J) = 0: NEXT J: GOSUB 24520: GOTO 24470
24500 IF KI = 7 THEN RETURN
24510 FOR I = 1 TO 5: GOSUB 24520: NEXT I: GOTO 24470
24520 GOSUB 22020: Q(I) = Q: VH(I, 15) = Q(I)
24530 RETURN
24540 REM VERKOOP MENU
24550 TE$ = "VERKOOP AANDELEN": GOSUB 24170
24560 IF KI > 5 THEN 24580
24570 I = KI: GOSUB 24600: GOTO 24550
24580 IF KI = 7 THEN RETURN
24590 FOR I = 1 TO 5: GOSUB 24600: NEXT I: GOTO 24550
24600 GOSUB 22530: FOR J = 1 TO 5: Q(J) = 0: NEXT J
24602 Q(I) = -Q: VH(I, 15) = Q(I)
24610 RETURN
24620 REM FAILLIET
24630 GOSUB 100: TE$ = "FAILLIET": GOSUB 20320: PRINT
24640 TE$ = "U HEEFT ONVOLDOENDE VERMOGEN OM VERDER"
24650 GOSUB 20320
24660 TE$ = "TE KUNNEN HANDELEN IN AANDELEN."
24670 GOSUB 20320: PRINT
24680 TE$ = "U BENT FAILLIET !!"
24690 GOSUB 20320: PRINT
24700 PRINT"NEW-YORK heeft de verbinding verbroken."
24710 PRINT: PRINT: RETURN
24720 REM EINDE
30000 REM 1000 HPROG
30010 REM 1230 EINDE HPROG
30020 REM 20000 INFO
30030 REM 20200 CONTACT NEW-YORK
30040 REM 20320 MODEM PRINT
30050 REM 20370 TOETS EEN TOETS
30060 REM 20400 INITIALISATIE
30070 REM 20560 WACHTLUS
30080 REM 20590 BEURSOVERZICHT
30090 REM 20890 KOERSOVERZICHT
30100 REM 21270 WEEKEND
30110 REM 21460 DIVIDEND
30120 REM 21590 BANK
30130 REM 21740 SPEKULATIE
30140 REM 21830 KOERSEN
30150 REM 22020 AANKOOP
30160 REM 22530 VERKOOP
30170 REM 22850 MENU
30180 REM 23160 KOERSHISTORIE
30190 REM 23270 KOOPHISTORIE
30200 REM 23380 STORTEN
30210 REM 23620 OPNEMEN
30220 REM 23880 RENTE
30240 REM 23930 TOETS IN IN$
30250 REM 23970 ZEKER WETEN
30260 REM 24120 3 REGELS
30270 REM 24170 KOOP MENU
30280 REM 24460 AANKOOP MENU
30290 REM 24540 VERKOOP MENU
30300 REM 24620 FAILLIET
30310 REM 24720 EINDE
30320 REM VARIABELEN REGEL 20480 :
30330 REM MO : SNELHEID MODEMPRINT
30340 REM EN WACHTLUS.
30350 REM RT$ : NAAM RETURN TOETS
30360 REM SOMS ENTER OF NEW-LINE
30370 REM ZC : IS DIT JUIST VRAAG
30380 REM 0 > UIT
30390 REM 1 > AAN
30400 REM
32000 REM**************************
32010 REM* *
32020 REM* (C) E.G.ERKAMP *
32030 REM* STETWAARD 106 *
32040 REM* 1824 VE ALKMAAR *
32050 REM* *
32060 REM* ACORN ELECTRON *
32070 REM* BFS E2.20 *
32080 REM* JANUARI 1987 *
32090 REM* *
32100 REM* PHILIPS P2000T *
32110 REM* BASICODE 2.0 *
32120 REM* AUGUSTUS 1988 *
32130 REM* *
32140 REM**************************
32150 REM COPYRIGHT NOS HILVERSUM