home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
MBUG
/
MBUG009.ARC
/
1985JUNE.CAT
< prev
next >
Wrap
Text File
|
1979-12-31
|
67KB
|
1,411 lines
.mt 1
.mb 1
.HM 0
.op
$1.50 RECOMMENDED
RETAIL PRICE
Registered for transmission
by post as a periodical
Publication No: VBH 6579.
Vo∞ 3« N≥ 9 JUNE, 1985
FROM THE CHIEF MBUG 1
LAST MEETING 1
FROM THE EDITOR'S KEYBOARD 2
BASIC PROGRAM LISTING TICTAC.MWB 3
Z80 MORE INSIDE INFORMATION 5
NOTICE OF SPECIAL GENERAL MEETING 10
"C" INTEREST GROUP NOTES 11
BASIC TIP 11
FROM ANOTHER MUG 12
"RCPM" COLUMN 15
PASCAL FOR BASIC PROGRAMMERS PART V 16
TAPE LIBRARY CATALOG AND RULES 20
BAZAAR SALES 21
NOMINATION FORM FOR ELECTIONS (G/MEETING) 22
MBUGS
PRESIDENT Grant Forest 874-8728
VICE-PRESIDENT Andrew Reid 836-0316
SECRETARY John Buxton 758-5744
MEMBERSHIP SECRETARY Jim Lobley 758-9169
TREASURER Kevin Carr 233-4629
TAPE LIBRARIAN Wal Hansen
EDITOR Andrew Barfoot 758-4822
BULLETIN BOARD 7 X 24 HRS 873-5734
( OFFLINE 4th WEDNESDAY EACH MONTH 1800 -2400 HOURS )
---------------------------------------------------------------
| ADDRESSES FOR CORRESPONDENCE |
---------------------------------------------------------------
| |
| OFFICIAL ADDRESS |
| MBUG AUSTRALIA INC. P.O. 157, NUNAWADING .VIC 3131. |
| |
---------------------------------------------------------------
| FOR OTHER CONTACTS AND ADDRESSES SEE INSIDE COVER |
---------------------------------------------------------------
| THE CATCHER is published by MBUG AUSTRALIA INCORPORATED |
| All copyrights are reserved by MBUG AUST INC |
---------------------------------------------------------------
NEX╘ MEETING ║ JULY 10th
TIME & PLACE : 7:30 pm, MOUNT WAVERLEY COMMUNITY CENTRE
Corner STEPHENSONS and MILLER Mt. WAVERLEY (opp station)
NEXT TO LIBRARY MELWAY REFRENCE 70 E 1è.pl70
.OP
.PO0
.HE ---- T H E C A T C H E R ----
TO : MBUG AUSTRALIA,
The Membership Secretary, 26 Alexander Cr., Ferntree Gully. 3156
I would like to - join MBUG AUSTRALIA [ ]
renew my subscription to M.A. [ ] Member No. [ ]
NAME :________________________________________________
ADDRESS :________________________________________________
________________________________________________
TELEPHONE :__________________ SYSTEM :_________________
HARDWARE :____________________________________________
[ ] $20 Melbourne subscription per year.
[ ] $17 Non-city subscription per year.
[ ] A$20 New Zealand subscription per year.
[ ] $10 Tape Library membership (payment only required once)
[ ] $15 Student Membership Subscription per year.
[ ] I would like a receipt, please
-------------------------------------------------------------
| |
| SERVICES PROVIDED BY MBUG AUSTRALIA |
| |
|-----------------------------------------------------------|
| TAPE LIBRARY * P.O. BOX 45 CANTERBURY 3126 |
|-----------------------------------------------------------|
| EDITOR * 10 CONN St. FERNTREE GULLY 3156 |
|-----------------------------------------------------------|
| $2.0░áPE╥ S/W TAP┼ FO╥ ON┼ MONTH¼ RETURNED NEXT MEETING.|
| $5.00 PER SIG/M VOLUME, WE SUPPLY THE DISK. |
| $4.00 PER BLANK 5" DISKETTE (DSDD) |
|-----------------------------------------------------------|
| ADVERTISEMENTS * P.O. BOX 157 NUNAWADING 3131 |
| $80.00 FULL PAGE $40.00 HALF PAGE $25.00 QUARTER PAGE |
| $3.00 FOR SERVICE AND RECURRENT ITEMS (LESS THAN 5 LINES) |
| FREE FOR ADVERTISEMENTS THAT ARE NOT RECURRING ITEMS |ì
|-----------------------------------------------------------|
| MODEM HIRE * JOHN BUXTON 758-5744 |
| $5.00 FIRST WEEK THEN $10.00 EACH ADDITIONAL WEEK |
| PLUS $25.00 DEPOSIT |
|-----------------------------------------------------------|
| BAZAAR * MICK HOLZINGER 354-6742 P.O. BOX 253 COBURG 3058|
|-----------------------------------------------------------|
| $1.50 PER C30 TAPE OR $25.00 PER BOX OF 20. |
| $1.50 BACK ISSUES OF CATCHER VOL 1 NO 1 PRINTED OCT 82 |
|-----------------------------------------------------------|
| DISKETTE COPYING * GRANT FOREST 874-8728 |
|-----------------------------------------------------------|
| 5"TO 8" OR 8"TO 5" MOST FORMATS $2.00 PER DISKETTE |
|-----------------------------------------------------------|
| FOR ALL POSTAL ORDERS ADD $1.50 MINIMUM |
-------------------------------------------------------------
.pn1
FROM-THE-CHIEF-MICROBUG---FROM-THE-CHIEF-MICROBUG--FROM-THE-CHIEF-MBUG-FRO
You≥á membershi≡ carΣ i≤ encloseΣ witΦ thi≤ CATCHE╥ anΣ carrie≤ you≥á name¼ ì
membershi≡ number¼ anΣ expir∙ date« Iµ an∙ datß i≤ incorrec⌠ o≥ thσ carΣ i≤ ì
missinτ contac⌠ Jiφ Loble∙ a⌠ thσ nex⌠ meeting«á Plastiπ holder≤ tha⌠ allo≈ ìèyo⌡á t∩á wea≥á thσ carΣ arσ availablσ froφ thσ BAZAA╥ atá 5░á cents«á Als∩ ì
availablσ wil∞ bσ ß DYM╧ machinσ s∩ tha⌠ you≥ interest≤ anΣ BE┼ detail≤ caε ì
bσá stucδ ont∩ thσ carΣ holder«á Thi≤ procedurσ wil∞ allo≈ yo⌡ t∩á identif∙ ì
othe≥áá member≤á tha⌠á havσá simila≥á H/╫á o≥á S/╫á interest≤á anΣáá foste≥ ì
communication≤ betweeε you« Al∞ committeσ member≤ havσ RE─ membershi≡ card≤ ì
s∩ tha⌠ yo⌡ caε seeδ theφ ou⌠ oε thσ meetinτ night.
Ove≥ thσ las⌠ fe≈ year≤ wσ havσ beeε holdinτ lo≈ profilσ HACKER╙ meetinτ oε ì
thσá 4T╚á Wednesda∙ fo≥ S10░ anΣ advanceΣ members«á I⌠ i≤ ßá ver∙á informa∞ ì
meetinτ witΦ nonσ oµ thσ standarΣ offering≤ (BAZAAR¼á TAP┼á LIBRARY¼á etc)« ì
Duσá t∩ thi≤ concentratioε oµ expertisσ wσ wil∞ bσ takinτ thσ completσ RBB╙ ì
systeφ t∩ thσ nex⌠ meetinτ s∩ tha⌠ S/╫ anΣ article≤ caε bσ revieweΣ fo≥ TH┼ ì
CATCHE╥ anΣ TAP┼ LIBRARY«á Iµ yo⌡ wan⌠ t∩ assis⌠ us¼ brinτ you≥ BEE+MONITO╥ ì
etπ anΣ tes⌠ drivσ thσ ne≈ S/W.
Thσ maiε hal∞ wil∞ no⌠ bσ availablσ a⌠ thσ nex⌠ meeting¼á s∩ therσ wil∞á bσ ì
n∩á classes«á Wσ wil∞ bσ havinτ ß HEL╨ discussioε areß wherσ al∞á publisheΣ ì
HELP'≤ iε TH┼ CATCHE╥ wil∞ bσ reviewed« Iµ yo⌡ havσ an∙ HELP'≤ notσ theφ oε ì
ß piecσ oµ pape≥ anΣ hanΣ theφ t∩ mσ a⌠ thσ star⌠ oµ thσ meeting.
T∩á qualif∙ fo≥ thσ $1╡ STUDEN╘ MEMBERSHI╨ yo⌡ wil∞ havσ t∩ suppl∙ u≤á witΦ ì
somσ kinΣ oµ identificatioε t∩ provσ you≥ claim.
WitΦá al∞á thσ ne≈ column≤ iε thi≤ CATCHE╥ myburs⌠ wil∞ bσ gettinτá smalle≥ ì
anΣ smaller¼ s∩ wil∞ seσ yo⌡ a⌠ thσ nex⌠ meeting.
é A╛ GRANT
FROM-THE-CHIEF-MICROBUG---FROM-THE-CHIEF-MICROBUG--FROM-THE-CHIEF-MBUG-FRO
-LAST-MEETING---LAST-MEETING---LAST-MEETING---LAST-MEETING---LAST-MEETING-
Thi≤á columεá i≤ mainl∙ fo≥ thσ benefi⌠ oµ thosσ wh∩ don'⌠ makσ i⌠á t∩á thσ ì
regula≥ meetings¼á t∩ kee≡ yo⌡ informeΣ oµ wha⌠ goe≤ oε there« Iµ yo⌡ wan⌠ ì
change≤ iε thσ wa∙ wσ g∩ abou⌠ it¼ le⌠ u≤ know.
Thσá meetinτá oεá 1▓á Junσ sa≈ thσ lonτ awaiteΣá announcemen⌠á oµá ou≥ ì
membershi≡á cards¼á whicΦá wil∞ bσ goinτ ou⌠ witΦ thi≤ Catche≥á (wσá hope)« ì
Committeσá peoplσá wil∞ havσ reΣ cards¼á whicΦ they'l∞ bσá wearinτá a⌠á thσ ì
meetings¼á s∩ tha⌠ al∞ anΣ sundr∙ caε approacΦ thesσ peoplσ witΦ questions« ì
Thσ res⌠ oµ u≤ wil∞ ge⌠ greeε cards.
Therσá werσá demonstration≤á oµá Viate∞ (iεá colour⌐á anΣá ßá used-ca≥ ì
softwarσá package«á Thσá Pasca∞ grou≡ wa≤ oε a≤ usual¼á bu⌠ thσ 'Cºá grou≡ ì
collapseΣ duσ t∩ worδ commitment≤ oµ it≤ organiser¼á bu⌠ wil∞ bσ bacδá nex⌠ ì
month«á Wσ havσ receiveΣ ne≈ manual≤ froφ ApplieΣ Technolog∙ on║á Viatel¼ ì
CP/═ anΣ thσ utilities¼ Simpl∙ D┬ anΣ thσ PC-85.
MBU╟á ha≤á concludeΣá aε arrangemen⌠ fo≥ ful∞ reciproca∞á right≤á witΦ ì
NorthMUG¼á s∩á member≤ arσ encourageΣ t∩ attenΣ thei≥ meeting≤ oεá thσá 1s⌠ ì
Monda∙ oµ thσ month.
Thσá CHECKSU═ prograφ fo≥ verifyinτ BASI├ program≤ a≤ showε iεá ONLIN┼ ì
wil∞á appea≥ iε thσ Catcher¼á (subjec⌠ t∩ copyright⌐ anΣ wil∞ bσ applieΣ t∩ ì
al∞ ne≈ item≤ iε thσ tapσ library«á Tape≤ ma∙ bσ returneΣ t∩ P.O«á Bo° 45¼ ì
Canterbury« Thσ BankcarΣ facilit∙ mentioneΣ las⌠ montΦ i≤ no≈ available.
Durinτá thσá nex⌠ month¼á thσ ne≈ Bulletiε BoarΣá softwarσá anΣá clocδ ì
shoulΣ bσ working¼ s∩ therσ wil∞ bσ timσ limit≤ anΣ encouragemen⌠ t∩ UPloaΣ ì
softwarσ t∩ extenΣ connec⌠ times.
-LAST-MEETING---LAST-MEETING---LAST-MEETING---LAST-MEETING---LAST-MEETING-
FROM THE EDITOR'S KEYBOARD
Ö Thi≤ montΦ wσ havσ ß lo⌠ oµ thing≤ t∩ finisΦ tha⌠ wσ starteΣ las⌠ month« ì
Iεá thσ future¼á ╔ hopσ ╔ wil∞ bσ ablσ t∩ condensσ somσ oµ thσ article≤á t∩ ì
fi⌠á int∩ onσ issue«á ╔ woulΣ likσ somσ feed-bacδ oε thσ article≤ oε DATIN╟ ì
anΣ SMARTKEY« I≤ anybod∙ readinτ them┐ Iµ ╔ ge⌠ n∩ answer≤ t∩ thi≤ questioε ì
b∙ nex⌠ issuσ ╔ wil∞ dis-continuσ publishinτ then.
╔á havσá beeε gettinτ message≤ oε thσ B/┬ askinτá abou⌠á payment≤á fo≥ ì
article≤á printeΣá iε thσ CATCHER«á T∩ se⌠ thσ recorΣ straigh⌠ thi≤ i≤á thσ ìèprocedurσ requireΣ b∙ thσ committeσ beforσ an∙ paymen⌠ i≤ t∩ bσ made«
1« Al∞ Listings¼ documents¼ codσ o≥ othe≥ submitteΣ materia∞ mus⌠ havσ you≥ ì
namσá anΣ addres≤ o≥ membershi≡ numbe≥ includeΣ iε thσ materia∞á submitted« ì
Iµ i⌠ i≤ ß listinτ you≥ membershi≡ numbe≥ iε ß RE═ statement.
2«á Iµá you≥ articlσ make≤ i⌠ int∩ aε issuσ oµ thσ Catche≥ i⌠ wil∞ theεá bσ ì
judgeΣ a≤ t∩ it'≤ meri⌠ b∙ thσ committeσ a⌠ thσ committeσ meetinτ followinτ ì
thσ montΦ oµ issue« I⌠ i≤ onl∙ a⌠ thi≤ timσ wil∞ thσ matte≥ bσ discussed.
3« N∩ correspondencσ wil∞ bσ entereΣ int∩ regardinτ an∙ payments«
4« S.G« Al∞ gooΣ thing≤ comσ t∩ thosσ wh∩ wait...
Sincσá t∩ thσ change-ove≥ t∩ aε incorporateΣ body¼á thσ committeσ ha≤á comσ ì
unde≥ extremσ pressurσ duσ t∩ thσ obligation≤ incorporatioε ha≤ placeΣ upoε ì
us«á A≤ mos⌠ oµ yo⌡ wil∞ havσ noticed¼á therσ ha≤ beeε man∙ change≤ iεá thσ ì
line-u≡á oµá name≤á oε thσ fron⌠ page«á Thi≤ iε itselµ show≤á somσá oµá thσ ì
problem≤ wσ havσ t∩ over-come« Iε Augus⌠ thσ annua∞ genera∞ meetinτ wil∞ bσ ì
helΣá anΣ al∞ member≤ oµ thσ committeσ wil∞ officiall∙ resigε anΣ election≤ ì
wil∞á bσ helΣ fo≥ thσ vacan⌠ positions«á Onl∙ somσ oµ thσ resigninτá officσ ì
bearer≤ wil∞ bσ standinτ fo≥ re-election« Iµ yo⌡ fee∞ yo⌡ havσ somethinτ t∩ ì
contributσ t∩ thσ cluΓ anΣ arσ prepareΣ t∩ pu⌠ iε ß year≤ worδ ge⌠á anothe≥ ì
cluΓá membe≥ t∩ nominatσ you«á A≤ therσ arσ thirteeε position≤ t∩ bσ filleΣ ì
therσá i≤ ß gooΣ chancσ yo⌡ coulΣ bσ elected«á Therσ i≤ ß nominatioεá forφ ì
printeΣ elsewherσ iε thi≤ issue¼á Al∞ yo⌡ havσ t∩ d∩ i≤ fil∞ i⌠ iε anΣ senΣ ì
i⌠ t∩ thσ club'≤ officia∞ address«
M∙ thank≤ g∩ t∩ thosσ peoplσ writinτ t∩ me« No⌠ al∞ arσ requireΣ t∩ bσ ì
printeΣ o≥ neeΣ answer≤ bu⌠ ╔ includσ belo≈ ß samplσ oµ wha⌠ i≤ startinτ t∩ ì
comσ in.
WIT╚á REGAR─ T╧ YOU╥ EDITOR'╙ COMMENT╙ (CATCHE╥ APRIL)¼á ╔ FEE╠ ╔ NEE─ ì
T╧á COMMEN╘á O╬á TH┼á LAC╦ O╞ EXPLANATION╙ O╬á SOM┼á O╞á TH┼á ARTICLE╙á AN─ ì
OMISSION╙ O╞ INFORMATIO╬ I╬ OTHERS« eg« "┴ Rea∞ Timσ Calenda≥ Clocδ Fo≥ Thσ ì
Microbeeóá (CATCHE╥ FE┬ 85)«á TH┼ MENTIONE─ SOURC┼ LISTIN╟ SOFTWAR┼ WA╙ NO╘ ì
INCLUDED.
TH┼á ABOV┼ MENTIONE─ BEEF╙ AR┼ ONL┘ MINOR¼á BU╘ ╔ HOP┼ M┘á INPU╘á WIL╠ ì
HEL╨á T╧á IMPROV┼ TH┼ STANDAR─ O╞ TH┼ CATCHE╥ FRO═ IT╙á ALREAD┘á ACCEPTABL┼ ì
LEVE╠ O╞ INFORMATIO╬ AN─ INTERESTIN╟ ARTICLE╙ AN─ PROGRAMS.
COLI╬ WHITEWA┘ (MEMBE╥ No« 446)
Öá Iε answe≥ t∩ Colin¼á thσ clocδ sourcσ codσ listinτ anΣ ß .OB╩ filσ arσ ì
iε thσ C║ sectioε oµ thσ RBBS« Iµ yo⌡ o≥ Harr∙ Pfeife≥ wh∩ als∩ askeΣ abou⌠ ì
thi≤ listinτ don'⌠ havσ ß modem¼á pleasσ le⌠ mσ kno≈ anΣ ╔ wil∞ arrangσ fo≥ ì
yo⌡ t∩ ge⌠ thσ listinτ and/o≥ prograφ whicheve≥ yo⌡ prefer« ED.
BASIC GAME LISTING TICTAC.MWB
00010 REM ////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\
00011 REM | << TIC-TAC-TOE >> |
00012 REM | Ex Computer Games for Business, School and Home. |
00013 REM | For TRS-80 Level 2 Basic. |
00014 REM | By J.V. Nahigian & W.S. Hodges. |
00015 REM | Modified for the MicroBee. |
00016 REM | By Peter Collins. Nov'83. |
00017 REM \\\\\\\\\\\\\\\\\\\\\\\\//////////////////////////
00018 REM
00020 REM F=No moves made in game.
00021 REM D=No moves by player.
00022 REM C()=Positioning of board(1 for computer 2 for player)
00023 REM E=Error flag to determine if test made is valid è (0 means error).
00024 REM G=Games No.
00025 REM M=Moves of players.
00026 REM W()=Winning moves of player for each game.
00027 REM X1=No of games won by player.
00028 REM X2=No of ties.
00029 REM Y1=No of games won by computer.
00030 REM
00100 DIM C(9),W(72,5)
00110 CLS:PRINT "THIS IS A GAME OF TIC-TAC-TOE."\
00120 PRINT\"I'M 'O', YOU'RE 'X'."\
00130 PRINT\"THE POSITIONS ARE :"\
00140 PRINT "1 2 3"
00150 PRINT "4 5 6"
00160 PRINT "7 8 9"
00165 PRINT \"HIT ANY KEY TO BEGIN...";
00167 K1$=KEY:IF K1$="" THEN 167 ELSE CLS
00170 G=G+1
00180 IF G<>72 THEN 190 ELSE LET G=1
00190 FOR I=1 TO 9:C(I)=0:NEXT I:F=0:D=0
00200 RESTORE:IF RND<.5 THEN 220
00210 PRINT "I'LL GO FIRST."\:GOTO 300
00220 PRINT "YOU GO FIRST."\
00225 FOR Z=1 TO 1000:NEXT Z
00230 PRINT\"WHAT IS YOUR MOVE";:INPUT M:CLS
00240 GOSUB 650
00250 IF E=0 THEN 270
00260 PRINT "ILLEGAL MOVE.":GOTO 905
00270 C(M)=2:GOSUB 780:F=F+1
00280 D=D+1:W(G,D)=M
00290 IF E=1 THEN 540 ELSE IF F=9 THEN 540
00300 M=1
00310 IF C(M)<>0 THEN 330 ELSE LET C(M)=1:GOSUB 780
00320 IF E=1 THEN 500 ELSE LET C(M)=0
00330 M=M+1:IF M<> 10 THEN 310
00340 M=1
00350 IF C(M)<>0 THEN 370 ELSE LET C(M)=2:GOSUB 780
00360 IF E=1 THEN 490 ELSE LET C(M)=0
00370 M=M+1:IF M<>10 THEN 350
00380 IF G=1 THEN 450 ELSE LET I=1
00390 E=0:FOR M=1 TO D
00400 IF W(I,M)=W(G,M) THEN 410 ELSE LET E=1
00410 NEXT M:IF E=1 THEN 440
00420 M=W(I,M+1):IF M=0 THEN 440
00430 IF C(M)=0 THEN 490
00440 I=I+1:IF I<>G THEN 1000
00450 IF RND<.4 THEN 480
00460 READ M:IF C(M)<>0 THEN 450 ELSE 490
00470 DATA 5,7,3,9,1,6,8,4,2
00480 M=INT(RND*9)+1:IF C(M)=0 THEN 490 ELSE 480
00490 C(M)=1
00500 PRINT "MY MOVE IS:";M
00510 PRINT:GOSUB 690:GOSUB 780
00520 IF E=1 THEN 550
00530 F=F+1:IF F=9 THEN 550 ELSE 230
00540 PRINT:GOSUB 690
00550 PRINT:IF Q=0 THEN 580 ELSE IF Q<>1 THEN 570
00560 PRINT "I WON!!!":Y1=Y1+1:GOTO 590
00570 PRINT "YOU WON!!!":X1=X1+1:GOTO 590
00580 PRINT "IT'S A TIE!!!":X2=X2+1
00590 FOR I=1 TO 5:W(G,I)=0:NEXT I:G=G-1
00600 PRINT\"ANOTHER GAME? (Y or N)";:INPUT A1$
00610 CLS:IF A1$="Y" THEN 130
00620 PRINT\"FINAL SCORE:"\è00630 PRINT "YOU"X1" ME"Y1" TIE(S)"X2
00640 PRINT\:GOTO 910
00650 E=0:IF M<1 THEN 670 ELSE IF M>9 THEN 670
00660 IF C(M)=0 THEN 680
00670 E=1
00680 RETURN
00690 FOR I=1 TO 9
00700 PRINT " ";:IF C(I)<>0 THEN 720
00710 PRINT "-";:GOTO 740
00720 IF C(I)<>1 THEN 730 ELSE PRINT "O";:GOTO 740
00730 PRINT "X";
00740 X=I/3:IF FLT(I)/3<>FLT(X) THEN 760
00750 PRINT:GOTO 770
00760 PRINT " ";
00770 NEXT I:RETURN
00780 E=0:Q=C(5):IF Q=0 THEN 840
00790 IF C(1)<>Q THEN 810 ELSE IF C(9)<>Q THEN 810
00800 E=1:RETURN
00810 IF C(3)<>Q THEN 820 ELSE IF C(7)=Q THEN 800
00820 IF C(2)<>Q THEN 830 ELSE IF C(8)=Q THEN 800
00830 IF C(4)<>Q THEN 840 ELSE IF C(6)=Q THEN 800
00840 Q=C(1):IF Q=0 THEN 870
00850 IF C(2)<>Q THEN 860 ELSE IF C(3)=Q THEN 800
00860 IF C(4)<>Q THEN 870 ELSE IF C(7)=Q THEN 800
00870 Q=C(9):IF Q=0 THEN 900
00880 IF C(3)<>Q THEN 890 ELSE IF C(6)=Q THEN 800
00890 IF C(7)<>Q THEN 900 ELSE IF C(8)=Q THEN 800
00900 Q=0:RETURN
00905 PRINT:GOSUB 690:GOTO 230
00910 END
01000 PLAY1:STOP
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
Wha⌠ i≤ thσ tota∞ fo≥ mone∙ :-
SEND
½ MORE
------
MONEY
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
Z80 EXTRA INSTRUCTIONS
======================
TESTING YOUR MICROBEE
Thσ firs⌠ ste≡ iε designinτ sucΦ ß self-tes⌠ prograφ i≤ t∩ decidσ jus⌠ ì
wha⌠ need≤ t∩ bσ done« I⌠ i≤ convenien⌠ fo≥ thσ prograφ t∩ checδ thσ extrß ì
instruction≤á iε logically-relateΣ blocks«á ╔ sugges⌠ tha⌠ wσ caε usσá thσ ì
eigh⌠ block≤ showε iε tablσ 1.
EacΦ blocδ test≤ ß suitablσ selectioε oµ thσ possiblσ operations¼á anΣ ì
mus⌠ d∩ tw∩ things║ i⌠ ha≤ t∩ makσ surσ tha⌠ thσ extrß operation≤ work¼ anΣ ì
i⌠ ha≤ t∩ checδ tha⌠ unuseΣ register≤ arσ no⌠ corrupted.
╔á decideΣá tha⌠ thσ bes⌠ wa∙ t∩ achievσ thesσ wa≤ t∩ usσá ßá standarΣ ì
machinσ codσ subroutine¼ whicΦ woulΣ cal∞ thσ tes⌠ segment≤ oε a⌠ ß time.
Beforσ eacΦ test¼ al∞ thσ register≤ iε thσ micr∩ woulΣ bσ se⌠ t∩ knowε ì
value≤ and¼ a⌠ thσ enΣ oµ thσ test¼ the∙ woulΣ al∞ bσ saveΣ iε memory« Thσ ì
higΦá leve∞á controllinτ prograφ (iε BASIC⌐ coulΣ theε recove≥á thσá storeΣ ì
datß anΣ tes⌠ i⌠ fo≥ correctnes≤ beforσ thσ nex⌠ test.
Prograφá ▒á i≤á aεá assembl∙ languagσá listinτá fo≥á thi≤á controllinτ ì
subroutinσá ('TSTALL')«á Prograφá ▓á show≤ thσ eigh⌠ tes⌠á segment≤á iεá ß ì
'pseud∩á assembl∙á listing'¼á whicΦá ha≤ t∩ bσ entereΣ int∩ thσá edito≥á a≤ ì
DEFB'≤ o≥ DEFW's« Al∞ arσ writteε t∩ sui⌠ ß Microbeσ witΦ a⌠ leas⌠ 16╦ oµ ìèRAM« EacΦ segmen⌠ i≤ fairl∙ simple¼ bu⌠ ß fe≈ comment≤ arσ iε order.
'TSTALL'.
Thi≤ segmen⌠ use≤ ß 'CAL╠ 3040Hº t∩ ge⌠ t∩ eacΦ tes⌠á segment¼á whicΦ ì
a≤á wσ wil∞ seσ late≥ i≤ loadeΣ int∩ thσ samσ areß oµ RA═ a⌠ 3040H¼á b∙ thσ ì
basiπ program«á Iµ thσ subsequen⌠ 'RETº goe≤ wrong¼á theε wσ kno≈ tha⌠ thσ ì
S╨ ha≤ beeε corrupteΣ b∙ thσ test.
'ADDSUB'.
Thi≤á segmen⌠ trie≤ eacΦ oµ thσ fou≥ eight-bi⌠á arithmetiπá operation≤ ì
once«á ╔ chosσ thσ values¼á anΣ thσ sequencσ oµ usinτ them¼ s∩ tha⌠ a≤ fa≥ ì
a≤ possible¼ multiplσ error≤ werσ unlikel∙ t∩ cance∞ eacΦ othe≥ out.
'COMP'.
Wheεá wσá tes⌠á thσ 'CP's¼á wσ havσ t∩ makσ surσ tha⌠ thσá ┌á flaτá i≤ ì
set/rese⌠á a⌠ thσ righ⌠ times«á Thσ 'LD'≤ oµ 'Aº arσ arrangeΣ s∩ that¼á iµ ì
thing≤ g∩ wrong¼ thσ segmen⌠ exit≤ witΦ thσ wronτ valuσ iε 'A'.
Thesσá arσá thσá fundamenta∞ machinσá codσá tests«á T∩á contro∞á them¼ ì
however¼á ╔ useΣ ß BASI├ program¼ (Prograφ 3⌐ whicΦ madσ i⌠ mucΦ easie≥ t∩ ì
asses≤ thσ result≤ anΣ t∩ forma⌠ thσ output«á Thσ prograφ ha≤ t∩ d∩ severa∞ ì
things:
a« LoaΣ thσ appropriatσ machinσ codσ segments.
b« Ruε thσ machinσ code.
c« Evaluatσ thσ results.
d« Outpu⌠ thσ assessment.
Initiall∙á thσá callinτ routinσ ('TSTALL'⌐ i≤ loadeΣ int∩ 3010╚á b∙á ß ì
serie≤ oµ READ≤ anΣ POKEs,anΣ theε thσ test≤ prope≥ start.
Thσá firs⌠á linσ oµ DAT┴ fo≥ eacΦ tes⌠ segmen⌠ define≤ thσá numbe≥á oµ ì
byte≤á iε thσ segment¼á thσ expecteΣ value≤ iε al∞ thσ register≤ excep⌠á H╠ ì
(whicΦá shoulΣ alway≤ bσ 12345D⌐ anΣ thσ titlσ oµ thσ segment«á Thi≤á datß ì
allow≤ thσ tes⌠ segmen⌠ t∩ bσ loadeΣ a⌠ 3040╚ anΣ run.
Thσá actua∞ value≤ oµ thσ registers¼á saveΣ iε memor∙ a⌠ 3000-3009╚ b∙ ì
'TSTALL'¼á arσ recovereΣ b∙ thσ subroutinσ a⌠ linσ 1000¼á anΣ thσ resul⌠ i≤ ì
evaluated«á Iµ thσ result≤ arσ OK¼á ß suitablσ messagσ i≤ printed¼ anΣ thσ ì
prograφ goe≤ oε t∩ thσ nex⌠ test.
Iµ an∙ failurσ occurs¼á thσ subroutinσ a⌠ linσ 300░ i≤á called«á Thi≤ ì
print≤á ou⌠á aεá erro≥ message¼á anΣ thσ expecteΣ anΣ actua∞á datßá iεá thσ ì
registers«á Thσá routinσá als∩ clear≤ ß flaτ (Z⌐ t∩ sho≈ tha⌠ therσ wa≤á ß ì
fault«á Finall∙á thσ faul⌠ routinσ sit≤ iε ß loo≡ whilσ yo⌡ makσá u≡á you≥ ì
minΣ wha⌠ t∩ d∩ next.
A⌠ thσ enΣ oµ thσ tests¼ ß success/failurσ messagσ appears.
Prograφ 1« 'TSTALL'.
;ROUTIN┼ T╧ CAL╠ EAC╚ TES╘ SEGMENT
;
ORG 3010H
TSTALL LD A,75H ;A=75H
LD C,A
LD B,A ;BC=7575H
LD D,A
LD E,A ;DE=7575H
LD HL,3039H ;HL=3039H/12345D
CALL 3040H ;TEST SEGMENT
LD (3000H),A ;SAVE A
LD (3001H),BC ;SAVE BC
LD (3003H),DE ;SAVE DE
LD (3005H),HL ;SAVE HL (UNCHANGED=3039H)
LD (3007H),IX ;SAVE IX
LD (3009H),IY ;SAVE IY
RET ;TO BASIC PROGRAM
Program 2. TEST SEGMENTS
è ORG 3040H ;SAME FOR EVERY TEST SEGMENT
;
;TEST THE 'LD R,XR' INSTRUCTIONS
LD1 LD IX,1234H ;IX=1234H
LD IY,5678H ;IY=5678H
LD B,XL
LD C,YH ;BC SHOULD=3456H
LD D,YL
LD E,XH ;DE SHOULD=7812H
LD A,XH ;A SHOULD=34H
RET
;
;TEST THE 'LD XR,R' INSTRUCTIONS
LD2 LD BC,2345H ;BC=2345H
LD DE,7890H ;DE=7890H
LD XH,C
LD XL,D ;IX SHOULD=4578H
LD YH,A
LD YL,E ;IY SHOULD=7590H
RET
;
;TEST THE 'LD XR,DATA' INSTRUCTIONS
LD3 LD IX,0 ;IX=0
LD IY,0 ;IY=0
LD XH,17H
LD XL,23H ;IX SHOULD=1723H
LD YH,0F0H
LD YL,8BH ;IY SHOULD=7590H
RET cont..
;TEST THE 'LD XR1,XR2' INSTRUCTIONS
LD4 LD IX,64H ;IX=0064H
LD XH,XL ;IX SHOULD=6464H
LD IY,3700H ;IY=3700H
LD YL,YH ;IY SHOULD=3737H
RET
;TES╘ TH┼ ARITHMETI├ INSTRUCTIONS
ADDSU┬ L─ A,90╚ ;A=90H
L─ IX,8020╚ ;IX=8020H
L─ IY,4030╚ ;IY=4030H
AD─ A,X╚ ;SHOUL─ BE║ A=10H¼ CY=1
AD├ A,X╠ ;SHOUL─ BE║ A=31H¼ CY=0
SU┬ Y╚ ;SHOUL─ BE║ A=0F1H¼ CY=1
SB├ A,Y╠ ;SHOUL─ BE║ A=0C0H
RET
;
;TES╘ TH┼ IN├ ª DE├ INSTRUCTIONS
INCDE├ L─ IX,0FF╚ ;IX=00FFH
L─ IY,0FF00╚ ;IY=FF00H
IN├ XH
IN├ XH
DE├ X╠ ;I╪ SHOULD=02FEH
DE├ YH
DEC YH
INC YL ;IY SHOULD=FD01H
RET
;
;TEST THE 'LOGICAL' INSTRUCTIONS
ANDORX LD IX,0B51CH ;IX=B51CH
LD IY,96D4H ;IY=96D4H
LD A,0 ;A=0
OR XH ;A SHOULD=B5H
AND YL ;A SHOULD=94H
XOR XL ;A SHOULD=88H
RETè ;
;TEST THE COMPARISONS
COMP LD IX,1234H ;IX=1234H
LD IY,5678H ;IY=5678H
LD A,34H ;A=34H
CP XH ;A=XH? (12H)
RET Z ;RETURN IF ERROR
LD A,56H ;A=56H
CP YH ;A=YH? (56H)
RET Z ;SHOULD RETURN FROM HERE
LD A,10H ;SET ERROR CODE
RET
END ;END PROGRAM 2.
Prograφ 3«á Prograφ listinτ fo≥ thσ BASI├ controller«
00100 REM TEST Z80 EXTRA INSTRUCTIONS. 7/5/85.
00110 REM 'Personal Software' Winter 1982
00120 REM Converted for the Microbee by Mark Bishop
00130 Z=-1: CLS: UNDERLINE: REM Z is pass/fail flag
00140 CURS 14: PRINT "TEST Z80 EXTRA INSTRUCTIONS": NORMAL
00150 REM load TSTALL calling routine
00160 FOR I=12304 TO 12338: READ J: POKE I,J: NEXT I
00170 REM start testing cont..
00180 FOR I=1 TO 8
00190 READ K,L,M,N,O,P,F0$: REM results and control data
00200 FOR Q=12352 TO 12351+K: READ J: POKE Q,J: NEXT Q:
REM load test segment
00210 R=USR (12304): REM run test
00220 GOSUB 1000: REM recover registers
00230 IF A=L AND B=M AND D=N AND H=12345 AND X=O AND Y=P
THEN GOSUB 2000 ELSE GOSUB 3000
00240 NEXT I
00250 CURS 844:
IF Z THEN PRINT"Tests of extra instructions successful"
ELSE PRINT"Test(s) of extra instructions failed"
00260 END
01000 REM recover registers
01010 A=PEEK(12288) : REM A =3000H/12288D
01020 B=(256*(PEEK(12290)))+PEEK(12289): REM BC=3001H/12290D
01030 D=(256*(PEEK(12292)))+PEEK(12291): REM DE=3003H/12292D
01040 H=(256*(PEEK(12294)))+PEEK(12293): REM HL=3005H/12294D
01050 X=(256*(PEEK(12296)))+PEEK(12295): REM IX=3007H/12296D
01060 Y=(256*(PEEK(12298)))+PEEK(12297): REM IY=3009H/12298D
01070 RETURN
02000 REM success message
02010 CURS I*64: PRINT F0$;:CURS I*64+8: PRINT"PASSED": RETURN
03000 REM print error information
03010 CURS I*64+32: PRINT F0$;: CURS I*64+40: PRINT "FAILED";:
Z=0: REM set basic message and error flag
03020 CURS 640: PRINT"Failure report for segment ";F0$
03030 PRINT "Registers:"; TAB(19)"A" TAB(24)"BC" TAB(31)"DE"
TAB(38)"HL" TAB(45)"IX" TAB(52)"IY"
03040 PRINT "Should be:" TAB(17)L; TAB(22)M; TAB(29)N;
TAB(37)"12345"; TAB(43)O; TAB(50)P
03050 PRINT "Were:" TAB(17)A; TAB(22)B; TAB(29)D; TAB(36)H;
TAB(43)X; TAB(50)Y
03060 CURS 976: PRINT "press any key to continue";
03070 K0$=KEY: IF K0$="" THEN 3070
03080 CURS 640: PRINT [A128 32];[A128 32];[A127 32];: RETURN
03090 GOTO 3070
04000 REM test segment calling routine
04010 DATA 62,117,79,71,87,95,33,57,48,205,64,48,50,0,48,237,67
04020 DATA 1,48,237,83,3,48,34,5,48,221,34,7,48,253,34,9,48,201è04030 REM LD1
04040 DATA 19,52,13398,30738,4660,22136,"LD1"
04050 DATA 221,33,52,18,253,33,120,86,221,69
04060 DATA 253,76,253,85,221,92,221,125,201
04070 REM LD2
04080 DATA 15,117,9029,30864,17784,30096,"LD2"
04090 DATA 1,69,35,17,144,120,221,97
04100 DATA 221,106,253,103,253,107,201
04110 REM LD3
04120 DATA 21,117,30069,30069,5923,61579,"LD3"
04130 DATA 221,33,0,0,253,33,0,0,221,38,23
04140 DATA 221,46,35,253,38,240,253,46,139,201
04150 REM LD4
04160 DATA 13,117,30069,30069,25700,14135,"LD4"
04170 DATA221,33,100,0,221,101,253,33,0,55,253,108,201
04180 REM ADDSUB
04190 DATA 19,192,30069,30069,32800,16432,"ADDSUB"
04200 DATA 62,144,221,33,32,128,253,33,48,64
04210 DATA 221,132,221,141,253,148,253,157,201
04220 REM INCDEC
04230 DATA 21,117,30069,30069,766,64769,"INCDEC"
04240 DATA 221,33,255,0,253,33,0,255,221,36,221
04250 DATA 36,221,45,253,37,253,37,253,44,201
04260 REM ANDORX
04270 DATA 17,136,30069,30069,46364,38612,"ANDORX"
04280 DATA 221,33,28,181,253,33,212,150,62
04290 DATA 0,221,180,253,165,221,173,201
04300 REM COMP
04310 DATA 21,86,30069,30069,4660,22136,"COMP"
04320 DATA 221,33,52,18,253,33,120,86,62,52,221
04330 DATA 188,200,62,86,253,188,200,62,16,201
04340 REM end of program listing
***************************************
At the July meeting we will again be present with the
C A S S E T T E D R I V E
fo≥ thσ Microbee«á A≤ showε a⌠ aε earlie≥ meetinτ thi≤ interfacσ wil∞ allo≈ ì
yo⌡á t∩á SAV┼ anΣ LOA─ a⌠ ┤ differen⌠á speed≤á (300¼á 1200¼á 6000effective¼ ì
12000effectivσ Bauds⌐ oε thσ ▓ mh· Microbeσ thσ 1200░ i≤ no⌠ possible« Thi≤ ì
timσá Board≤á witΦá al∞ specifications¼á Cassettσ recorder≤á anΣá CompleteΣ ì
Drive≤ wil∞ bσ fo≥ Sale.
D∩ no⌠ hesitatσ t∩ asδ mσ abou⌠ al∞ it≤ capabilitie≤ Advicσ i≤ freσ anΣ yo⌡ ì
migh⌠ learε somethinτ morσ abou⌠ thσ Might∙ Microbeσ anΣ it≤á capabilities« ì
Seσ yo⌡ then.
E van Bommel
PO Box 52 The Basin 3154
Phone 762 7046.
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
B∙ multiplicatioε anΣ additioε oµ thσ number≤ ▒ t∩ ╣á inclusive¼á makσ ì
100¼ eacΦ numbe≥ beinτ useΣ oncσ only.
0 KNEE MIND ECNALG HE'S/HIMSELF
------- ------ ¡------
M.D. LIGHTS MATTER
PH.D.
B.S.
è
GOING J R energy HABIRDND=BUTWOSH
------- YOU U ME
CCCCCCC S
T
B SEARCH
UL WORL TIMING TIM ING
L
SEARCH
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE
MBUG AUSTRALIA INCORPORATED.
NOTICE_OF_SPECIAL_GENERAL_MEETING
┴ Specia∞ Genera∞ Meetinτ oµ thσ IncorporateΣ Asccociatioε wil∞ bσ held¼
on 14 AUGUST 1985
at Waverley Community Centre
at 8 p.m.
for the purpose of electing office bearers.
Dated the 1st day of July 1985
J. Buxton
Secretary
------------------------------
1«á Nomination≤á oµ candidate≤ fo≥ electioε a≤ officer≤ oµ thσ Associatioε ì
o≥ a≤ ordinar∙ member≤ oµ thσ Committee:
a⌐á shal∞á bσá madσ iε writing¼á signeΣ b∙á tw∩á member≤á oµá thσ ì
Associatioεá anΣá accompanieΣ b∙ thσ writteε consen⌠á oµá thσ ì
candidatσ (whicΦ ma∙ bσ endorseΣ oε thσ forφ oµá nomination)╗ ì
and
b⌐á shal∞á bσ delivereΣ t∩ thσ secretar∙ oµ thσ Associatioεá no⌠ ì
les≤ thaε ╖ day≤ beforσ thσ datσ fixeΣ fo≥ thσ holdinτ oµá thσ ì
annua∞ Specia∞ meeting.
2«á Iµá insufficien⌠ nomination≤ arσ receiveΣ t∩ fil∞ al∞ vacancie≤ oεá thσ ì
Committee¼á thσá candidate≤ nominateΣ shal∞ bσ deemeΣ t∩ bσ electeΣ anΣ ì
furthe≥ nomination≤ shal∞ bσ receiveΣ a⌠ thσ Specia∞ Genera∞ meeting.
3«á Iµá thσá numbe≥á oµá nomination≤ receiveΣ i≤ equa∞á t∩á thσá numbe≥á oµ ì
vacancie≤á t∩á bσ filled¼á thσ person≤ nominateΣ shal∞ bσ deemeΣá t∩á bσ ì
elected.
4«á Iµá thσá numbe≥ oµ nomination≤ exceed≤ thσ numbe≥ oµá vacancie≤á t∩á bσ ì
filled¼ ß ballo⌠ shal∞ bσ held.
5«á Thσá ballo⌠á fo≥ thσ electioε oµ officer≤ anΣ ordinar∙ member≤á oµá thσ ìè Committeσá shal∞á bσ conducteΣ a⌠ thσ Specia∞ Genera∞ meetinτá iεá sucΦ ì
usua∞ anΣ prope≥ manne≥ a≤ thσ Committeσ ma∙ direct.
6«á ┴ nominatioε oµ ß candidatσ fo≥ electioε unde≥ thi≤ clausσ i≤ no⌠ valiΣ ì
iµ tha⌠ candidatσ ha≤ beeε nominateΣ fo≥ anothe≥ officσ fo≥ electioε a⌠ ì
thσ samσ election.
SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE
C-INTEREST-GROUP--C-INTEREST-GROUP--C-INTEREST-GROUP--C-INTEREST-GROUP--C-
Fo≥á thosσ interesteΣ iε purchasinτ thσ HI-TEC╚ ├ Compile≥ fo≥ $120.0░ ì
pleasσ cal∞ mσ durinτ busines≤ hour≤ oε 529-272▓ o≥ leavσ ß messagσ fo≥á mσ ì
oεá thσ bulletiε boarΣ o≥ a⌠ homσ oε 551-6892«á Thσ forma⌠ wil∞ bσ Microbeσ ì
╡á 1/4óá disks«á Othe≥ format≤ ma∙ bσ availablσ iεá thσá nea≥á future«á Thσ ì
packagσ include≤ ß technica∞ manual.
HAROLD FORDSHAM
C-INTEREST-GROUP--C-INTEREST-GROUP--C-INTEREST-GROUP--C-INTEREST-GROUP--C-
PROGRAM REVIEWS
GROTNIK WARS
Thi≤á i≤á ßá high-speeΣ three-dimensiona∞á video-game¼á se⌠á iεá thσ ì
surrea∞á waste≤ oµ dee≡ space«á Wha⌠ yo⌡ seσ oε you≥ screeε i≤ wha⌠á yo⌡ ì
woulΣ seσ iµ yo⌡ lookeΣ ou⌠ oµ ß windo≈ oµ ß spacσ ship« AlthougΦ i⌠ ì
ma∙á looδ infinitσ thσ Universσ i≤ ß closeΣ one«á Object≤ tha⌠á disappea≥ ì
int∩ thσ distancσ wil∞ sneaδ u≡ behinΣ you╗ object≤ tha⌠ yo⌡ losσ ou⌠ onσ ì
sidσ oµ thσ screeε ma∙ reappea≥ oε thσ othe≥ sidσ ß fe≈ second≤ later«
AlthougΦá i⌠ i≤ possiblσ t∩ tinke≥ awa∙ a⌠ thσ key≤ anΣ stil∞á enjo∙á thσ ì
game¼á ßá higΦ leve∞ oµ manua∞ dexterit∙ i≤ essentia∞ t∩ success«á S∩á t∩ ì
al∞ thσ two-fingereΣ typist≤ likσ myself¼ don`⌠ expec⌠ t∩ becomσ ß GRAN─ ì
GROTMASTER.
T∩ summarize¼á yo⌡ anΣ ß buncΦ oµ nastie≤ arσ roaminτ arounΣ dee≡ spacσ ì
tryinτ t∩ exterminatσ eacΦ other« Yo⌡ canno⌠ escapσ bu⌠ no≥ caε they.
BUNYI╨ ADVENTUR┼ (require≤ 32K)
Thi≤á i≤ ß conventiona∞ tex⌠ adventurσ se⌠ iε outbacδ Australia«á Thσá to≡ ì
halµ oµ thσ screeε display≤ you≥ curren⌠ statiπ position« Thσ bottoφ halµ ì
log≤á dynamiπá events«á Thσ aiφ i≤ t∩ catcΦ thσ BUNYI╨ anΣ oε thσ wa∙á yo⌡ ì
wil∞ encounte≥ n∩ enΣ oµ Australiaε flora¼á faunß anΣ folklore« Caε yo⌡ ì
catcΦá thσ jumbucδ b∙ thσ billabong┐á Wha⌠ i≤ thσ significancσ oµá thσ ì
blacδ stump┐á AnΣ wha⌠ wa≤ thσ swagmaε doinτ b∙ thσ coolibaΦ tree┐ A≤ nigh⌠ ì
approache≤ anΣ yo⌡ boi∞ thσ billy¼ yo⌡ hea≥ thσ how∞ oµ thσ dingoe≤ a≤ thσ ì
bunyi≡ approaches.
Wha⌠á distinguishe≤á thi≤á adventurσá froφ other≤ i≤ thσá lacδá oµá tricδ ì
siuations«á Yo⌡á don`⌠ havσ t∩ burε thσ pape≥ t∩ reaΣ thσá combination≤á t∩ ì
thσá safe¼á al∞ yo⌡ havσ t∩ d∩ i≤ t∩ examinσ everythinτ iε sigh⌠ anΣá worδ ì
ou⌠á it`≤á significancσ anΣ makσ libera∞ usσ oµ thσá HEL╨á command«á Tw∩ ì
feature≤ supporteΣ b∙ BUNYI╨ arσ MAR╦ anΣ BACKTRACK« Iµ yo⌡ arσ abou⌠ t∩ ì
tr∙á somethinτ risk∙ theε givσ thσ MAR╦ commanΣ first¼á anΣ iµ yo⌡ d∩ ì
ge⌠ killeΣ yo⌡ caε typσ BACKTRAC╦ anΣ bσ reinstateΣ a⌠ tha⌠ poin⌠á wherσ ì
yo⌡ typeΣ MARK« Thesσ command≤ onl∙ worδ withiε ß ruε oµ thσ game«
BotΦ program≤ comσ witΦ ß comprehensivσ 1░ pagσ instructioε booklet.
BASIC TIP
Next time you write a menu driven program like this :-
00300 K1$ = KEY$ : IF K1$ = "" THEN 300
00310 IF K1$ = "N" OR K1$ = "n" THEN 1000
00320 IF K1$ = "S" OR K1$ = "s" THEN 2000
00330 IF K1$ = "U" OR K1$ = "u" THEN 3000
00340 IF K1$ = "D" OR K1$ = "d" THEN 4000 etc....è TRY THIS INSTEAD
00300 ON SEARCH ("NnSsUuDd",KEY$)+1 GOTO 1000,2000,3000,4000
Iµ n∩ ke∙ i≤ presseΣ thσ KEYñ ╜ "#ó canno⌠ bσ matcheΣ s∩ thσ SEARC╚ ì
functioε returns a 0 value and the + 1 returns command to line 300.
ROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-A
Advance Computer Communications
by Philip Ahrens
(reviewed by Raymond Han for MBUG Australia Inc.)
(article supplied by microbee Users Group of South Australia)
Thσá ke∙á technolog∙á iε thσ 20tΦ Centur∙á i≤á informatioεá gathering¼ ì
processing¼á storinτá anΣá distribution«á I⌠á i≤á thσá companie≤á witΦá thσ ì
informatioεá tha⌠ havσ thσ powe≥ today«á Thi≤ ha≤ resulteΣ iε ß hugσ growtΦ ì
iεá thσá areßá oµ computing«á Thσ fielΣ oµá communication≤á ha≤á als∩á beeε ì
extendeΣ t∩ thσ limits¼á everyonσ ha≤ ß radio¼á ß televisioε anΣ satellite≤ ì
circlσá thσ eartΦ abovσ us«á Thσ area≤ oµ computinτ anΣ communication≤ havσ ì
mergeΣá togethe≥ anΣ thσ terφ Compute≥ Networδá - interconnectinτá separatσ ì
computers¼ havσ founΣ it'≤ wa∙ int∩ ou≥ vocabulary.
Thσá numbe≥ oµ peoplσ ╔ know¼á wh∩ no≈ havσ computers¼á i≤ astounding« ì
Persona∞ Computer≤ arσ no≈ thσ mos⌠ stoleε iteφ froφ homes¼á eveε morσ thaε ì
vide∩ recorders« WitΦ thσ increasinτ powe≥ anΣ decreasinτ cos⌠ oµ computer≤ ì
mos⌠á smal∞ businesse≤ no≈ havσ ß compute≥ doinτ man∙ job≤ requireΣ oµá it« ì
WitΦ al∞ thσ thousand≤ oµ computer≤ iε Victoriß alonσ wouldn'⌠ bσ usefu∞ iµ ì
wσ exchangσ informatioε cheapl∙ anΣ easily?
Connectinτ togethe≥ computer≤ oµ variou≤ make≤ i≤ comple° anΣá fraugh⌠ ì
witΦ dangers«á T∩ makσ ß morσ usefu∞ system¼á computer≤ shoulΣ bσ connecteΣ ì
togethe≥á systematicall∙á anΣá witΦ ß rigiΣ standarΣ s∩á tha⌠á problem≤á oµ ì
incompatibalit∙ d∩ no⌠ occur« Fo≥ example¼ thσ RS23▓ 'standardº wa≤ rigidl∙ ì
defineΣá beforσá computer≤ becamσ wel∞ known¼á bu⌠ somσá companie≤á treateΣ ì
thei≥á computer≤ a≤ ß termina∞ whilσ other≤ treateΣ theφ a≤ modems¼á anΣ s∩ ì
begaε thσ RS23▓ 'bluesº a≤ wσ kno≈ it«á Thi≤ articlσ discusse≤ thσá concep⌠ ì
oµ compute≥ networδ anΣ wha⌠ standard≤ havσ beeε established.
┴áá compute≥á networδá consist≤á oµá ßá collectioεá oµá separatσáá bu⌠ ì
interconnecteΣ computers«á Thσ interconnectioε doe≤ NO╘ meaε b∙ modeφ onl∙ ì
bu⌠ coulΣ bσ oµ an∙ forφ sucΦ a≤ wires¼á lasers¼á microwaves¼ satellite≤ o≥ ì
perhap≤á ßá modem«á Thσá onl∙á communicatioε betweeε computer≤á i≤á iεá thσ ì
exchanginτ information¼ iµ ß compute≥ caε sto≡ anothe≥ onσ forcibl∙ theε i⌠ ì
i≤ no⌠ ß network«á S∩ thσ lowl∙ Microbeσ become≤ par⌠ oµ ß compute≥ networδ ì
wheεá yo⌡ pluτ iε it≤ modeφ anΣ loτ oε t∩ AUSTPAC«á Therσ arσ man∙á reason≤ ì
fo≥á havinτá ßá compute≥á communication≤á system¼áá the∙á al∞á concerεá thσ ì
exchanginτ oµ informatioε anΣ data.
Somσ example≤ arσ :
- Coordinatinτ ß largσ compan∙ (likσ ApplieΣ Technology)
- Distributinτ computer≤ s∩ tha⌠ informatioε i≤ availablσ t∩ all.
- Cheape≥ t∩ havσ smal∞ computer≤ anΣ ß centra∞ storagσ centre.
- Faste≥ turnarounΣ (ie║ faste≥ thaε ß letter)
- Morσ efficien⌠ anΣ productivσ communicatioε betweeε people.
Compute≥ communication≤ systeφ shoulΣ providσ ║
- Datß (ASCII⌐ anΣ unrestricteΣ (Binary⌐ types.
- Freσ forma⌠ anΣ fixeΣ format.
- Erro≥ correctioε anΣ abilit∙ t∩ removσ it.
- Addressinτ oµ terminals.
- Priorit∙ anΣ security.
- Cos⌠ effective.
A⌠á thσá samσ time¼á thσ networδ shoulΣ bσ fast¼á easil∙ accesseΣá anΣ ì
efficient«á Unfortunatel∙ thσ SPEED¼ SERVIC┼ anΣ EFFICIENC┘ oµ ß systeφ arσ ì
conflictinτ anΣ ß compromisσ mus⌠ bσ reached« Fo≥ examplσ yo⌡ don'⌠ wan⌠ aε ì
introductioεá anΣá hel≡á messagσ wheε al∞ yo⌡ wan⌠ t∩ d∩á i≤á shu⌠á dowεá ß ì
runawa∙ machinσ iε thσ outback.
Therσá arσá tw∩á othe≥ term≤ whicΦ arσ iε conflic⌠á whicΦá affec⌠á thσ ìèperformancσá oµ ß compute≥ network«á DELA┘ refer≤ t∩ thσ timσ i⌠ take≤á fo≥ ì
thσ firs⌠ bi⌠ oµ messagσ t∩ bσ delivered«á THROUGHPU╘ refer≤ t∩ thσ timσ i⌠ ì
take≤á fo≥ ß wholσ messagσ t∩ ge⌠ thougΦ thσ system«á Delay≤ arσ reduceΣ b∙ ì
havinτá shor⌠á messages¼á shor⌠á queue≤á anΣá fe≈á contro∞á message≤á whilσ ì
throughpu⌠ require≤ longe≥ messages¼ lonτ queue≤ anΣ fe≈ contro∞ messages.
Oεá to≡á oµ al∞ thi≤ gooΣ SERVIC┼ require≤ morσá contro∞á message≤á t∩ ì
compensatσ fo≥ errors«á Thσ stud∙ oµ ho≈ t∩ ge⌠ thσ bes⌠ compromisσ betweeε ì
therσá factor≤ woulΣ fil∞ ß wholσ book¼á s∩ iε summar∙ le⌠ mσ sa∙ tha⌠á thσ ì
Optica∞ Fibe≥ i≤ becominτ standarΣ communicatioε mediuφ betweeε citie≤ witΦ ì
satellite≤áá communicatinτá internationally«áá I⌠á appear≤á thσá lowl∙á olΣ ì
telephonσ i≤ stil∞ thσ cheapes⌠ loca∞ communicatioε methoΣ a⌠ present.
Let≤á looδ a⌠ wha⌠ ß compute≥ networδ coulΣ contaiε t∩ ge⌠á thσá wholσ ì
systeφá iεá perspective«á ╔á wil∞ usσ thσ name≤ giveε t∩á thσá firs⌠á majo≥ ì
networδ ARPANET«á Ou⌠ Microbeσ i≤ calleΣ ß HOS╘ whicΦ i≤ connecteΣ b∙ phonσ ì
viß ß modeφ t∩ ß communicatioε SUBNET« Thσ subne⌠ send≤ message≤ t∩ anothe≥ ì
subne⌠á anΣ establishe≤ contac⌠ betweeε tw∩ host≤ withiε tha⌠ network¼á anΣ ì
fibe≥á optic≤ seeφ thσ mos⌠ suitablσ wa∙ oµ doinτ this«á Differen⌠á subnet≤ ì
arσá theεá connecteΣá vißá satellitσá iµá internationa∞á communicatioεáá i≤ ì
required«á Notσá tha⌠ connectinτ tw∩ microbee≤ togethe≥ viß you≥ modem≤á i≤ ì
hos⌠á t∩ hos⌠ communication≤ anΣ i≤ thereforσ thσ simples⌠ forφ oµ network« ì
Thσá MBU╟á bulletiε boarΣ i≤ essentiall∙ ß singlσ subne⌠ sincσá onl∙á host≤ ì
communicatσ witΦ it.
..put fig1 here......
Figurσ ▒. A Communication Subnet.
T∩ reducσ thσ complexit∙ oµ ß compute≥ networδ anΣ t∩ enablσ an∙á use≥ ì
o≥ networδ t∩ communicatσ witΦ othe≥ user≤ o≥ networks¼á network≤ havσ beeε ì
organiseΣá int∩á layer≤ o≥ levels«á Thσ purposσ oµ eacΦ leve∞ i≤á t∩á offe≥ ì
service≤ t∩ thσ leve∞ abovσ i⌠ withou⌠ havinτ t∩ kno≈ thσ detail≤ abou⌠ ho≈ ì
thesσá service≤ arσ done«á Thσ leve∞ oµ onσ compute≥ communicate≤ witΦá thσ ì
samσá leve∞ oε thσ othe≥ computer«á Thσ rule≤ anΣ convention≤ useΣ iεá thi≤ ì
conversioεá i≤ calleΣ ß protocol«á Thσ Internationa∞ Standard≤ Organisatioε ì
(ISO⌐á ha≤ trieΣ t∩ standardizσ thesσ protocol≤ anΣ ha≤ calleΣ i⌠ thσá Opeε ì
System≤ Interconnectioε (OSI)« ╔ calleΣ i⌠ thσ IS╧ Referencσ model.
Thσ IS╧ Referencσ Mode∞ consist≤ oµ seveε level≤ witΦ clearl∙á defineΣ ì
functions¼ the∙ arσ :
PHYSICA╠ - Transmit≤ thσ actua∞ datß bits
DAT┴ LIN╦ - Manage≤ thσ Physica∞ Linδ (eg« acces≤ rules).
NETWOR╦ - Route≤ thσ message≤ acros≤ thσ networδ o≥ subnet.
TRANSPOR╘ - Provide≤ ß communicatioε patΦ betweeε users.èááááááááááááááááááááMessage≤á coulΣá g∩ severa∞ way≤ fo≥á maximuφ ì
ááááááááááááááááááááspeed.
SESSIONáááááááá-ááááSet≤ u≡ anΣ manage≤ communucatioε betweeε enΣ ì
ááááááááááááááááááááusers.
PRESENTATIONááá-ááááTransform≤ááá datßááá fo≥ááá efficienc∙ááá o≥ ì
áááááááááááááááááááácompatibility.
APPLICATIONáááá-ááááDepends on user. Data bases, modem7 etc..
..put fig2 here
Figure 2. The ISO Refrence Model.
Thσá IS╧ Referencσ Mode∞ provide≤ ß standarΣ tha⌠ ha≤ beeε adopteΣá b∙ ì
man∙ communicatioε networks¼á iε fac⌠ IntegrateΣ Circuit≤ arσ no≈ availablσ ì
t∩ d∩ thσ lowe≥ fou≥ level≤ fo≥ you¼ Thσ Etherne⌠ Loca∞ Areß Networδ i≤ onσ ì
sucΦ example.
Telecoφá offer≤ threσ differen⌠ method≤ oµ communicatioε whicΦ tr∙á t∩ ì
usσ thesσ standard≤ :
1« AUSTPA├ - Australiaε Packe⌠ SwitcheΣ Datß Service.
2« DD╙ - Digita∞ Datß Service« Wherσ ß dedicateΣ linσ i≤ leaseΣ o≥ ì
DATE╠áá t∩á ßá compan∙á a⌠á ßá fixeΣá ratσá oµá higΦáá speeΣ ì
communications«á Iεá fact¼á Austpaπ wil∞ makσ usσ oµ i⌠á fo≥ ì
heav∙ communications.
3«á PRIVAT┼ - Thσ Privatσ Telephonσ Linσ i≤ als∩ useΣ fo≥ communication≤ a≤ ì
ß linδ t∩ othe≥ computer≤ viß ß modem.
B∙á offerinτ thesσ service≤ Telecoφ ha≤ provideΣ ß variet∙ oµ service≤ ì
tha⌠á offe≥ speeΣ a⌠ ß pricσ o≥ cos⌠ effectivσ arrangement≤ a⌠ thσá expensσ ì
oµá speed«á Austpaπ wil∞ mainl∙ bσ useΣ fo≥ Credi⌠á Checking¼á reservation≤ ì
whilσá DDS(Datel⌐á wil∞á bσá useΣá b∙á Banks¼áá Airline≤á anΣáá Governmen⌠ ì
Department≤ (Medibank).
Wel∞á ╔á hopσá I'vσá we⌠á you≥ appetite≤ fo≥ morσá oεá thσá theor∙á oµ ì
communicatioεá systems«á I╞á yo⌡á arσ interesteΣ yo⌡á wil∞á finΣá thσá booδ ì
'Compute≥áá Networksºáá b∙á A.S«áá Tanenbauφá ver∙á straigh⌠á forwarΣáá anΣ ìèinformative« Tr∙ ou⌠ thσ followinτ probleφ oε you≥ beσ :
Q«á Imaginσá tha⌠ yo⌡ havσ traineΣ you≥ pe⌠ bee¼á Bumble¼á t∩ carr∙á ßá bo° ì
oµá threσ flopp∙ disk≤ arounΣ it≤ necδ (yo⌡ didn'⌠ kno≈ tha⌠ bee≤ havσ tha⌠ ì
mucΦ power!!!)«á Thesσ flopp∙ disk≤ eacΦ contaiε 250,00░ bytes« Thσ beσ caε ì
trave∞ alonτ witΦ you¼á whereve≥ yo⌡ ma∙ be¼á a⌠ 1╕ km/hour« Fo≥ wha⌠ rangσ ì
oµá distance≤ doe≤ ß Bumblσ havσ ß highe≥ datß ratσ thaε ß 30░ bp≤ microbeσ ì
modem?
ROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-ANOTHER-MUG:FROM-A
ì
UIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
FinΣ ß numbe≥ which¼á multiplieΣ b∙ 3,6,9,12,15,18,21,24¼á o≥ 2╖ shal∞á iε ì
eacΦ casσ givσ a≤ thσ produc⌠ thσ samσ digit¼ threσ time≤ repeated.
UIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
TRY THIS ON YOUE BEE
00100 HIRES
00110 FOR T0=0 TO 2*3.14159 STEP.3
00120 SET 250+INT(30*1.63*SIN(T0)),120+INT(30*COS(T0))
00130 NEXT T0
UIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
B∙á multiplicatioε anΣ additioε oµ thσ number≤ ▒ t∩ ╣ inclusive¼á makσ 100¼ ì
eacΦ numbe≥ beinτ useΣ oncσ only.
UIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM
WitΦá ove≥ 2░ call≤ ß day(averagσ >6░ fo≥ ß weekend⌐ wσ canno⌠ afforΣá eveε ì
onσá HO╟á user«á Thi≤á i≤ thσ reasoε ß lo⌠ oµ ne≈ S/╫ ha≤á beeεá madσá non-ì
xyam'able«á Thσá ne≈ RBB╙ S/W(witΦ clock⌐ i≤ les≤ thaε ┤ week≤ awa∙ anΣá a⌠ ì
tha⌠ timσ al∞ S/╫ wil∞ bσ downloadable.
TIP1éá Wheε eve≥ yo⌡ uploaΣ ß filσ t∩ thσ RCPM¼á checδ tha⌠ i⌠ wa≤á receiveΣ ì
O.K« b∙ typinτ thσ XYAM.LO╟ filσ e.g.
CPM║ <ret>
TYP┼ XYAM.LO╟ <ret>
no≈á checδá thσ las⌠ linσ displayeΣ fo≥ you≥ ne≈ filσ entry«á Iµ i⌠ i≤á no⌠ ì
therσá senΣ thσ filσ agaiε witΦ ß ne≈ name¼á ╔ wil∞ ER┴ an∙ deaΣ file≤á fo≥ ì
you.
TIP2éá D∩ no⌠ ^╦ ove≥ thσ BULLETI╬ MESSAG┼ wheε yo⌡ firs⌠ loτ iε a≤á specia∞ ì
announcment≤á wil∞ no≈ utilizσ thi≤ feature«á EacΦ ne≈ announcmen⌠ wil∞á bσ ì
preceedeΣá b∙ ß numbe≥ s∩ tha⌠ yo⌡ caε ^╦ a≤ sooε a≤ yo⌡ seσ onσá tha⌠á yo⌡ ì
havσ reaΣ before.
CPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM-RCPM
PASCAL__FOR__BASIC__PROGRAMMERS
Dixon Kenney
PART__V
Iεá thi≤ episodσ oµ ou≥ excitinτ seria∞ ¿ o≥ maybσ it'≤ a≤ un-invitinτ ì
a≤ cerea∞ t∩ yo⌡ !⌐ wσ arσ leavinτ thσ Bankinτ program¼á anΣ movinτ oε int∩ ì
ne≈á ground«á Wσá arσ introducinτ thσ concep⌠ oµ ßá pro-cedure¼á thσá CAS┼ ì
statement¼á anΣ ß differen⌠ kinΣ oµ loop¼á onσ whicΦ i≤ unavailablσ iεá BE┼ ì
BASIC.
Here'≤á thσ codσ oµ thσ program¼á which¼á a≤ yo⌡ caε see¼á i≤ thσá be-ì
ginninτ oµ ß stock-contro∞ program«á Wσ won'⌠ ge⌠ to∩ fa≥ witΦ it¼á bu⌠ i⌠ ì
ma∙ givσ yo⌡ somσ gooΣ ideas.
Thi≤á codσá doe≤á no⌠ underlinσ reserveΣ words¼á a≤ wσá havσá donσá iε ìèpreviou≤ listings« The∙ arσ no⌠ normall∙ underlineΣ wheε codσ i≤ written.
1ááPrograφ Inventory;
3ááType
4áá St3░ ╜ String[30];
6ááConst
7áá MenuItem≤ ╜ 10;
9ááVar
10áá MenuLis⌠ ║ Arra∙ █ ░ .« 1╡ ▌ oµ St30;
11áá Iteφ ║ Integer;
12áá Loope≥ ║ Boolean;
14ááááááá√ **¬ Thi≤ i≤ thσ beginninτ oµ ß procedurσ **¬ }
16áááááááProcedurσ MenuWritσ ;
18áááááááVar
19ááááááá ╔ ║ Integer;
21áááááááBegin
22ááááááá ClrScr;
23ááááááá Writeln╗ Writeln;
24ááááááá Writeln(º ':20¼ MenuList[0]);
25ááááááá Writeln╗ Writeln;
26ááááááá Fo≥ ╔ :╜ ▒ t∩ MenuItem≤ do
27ááááááá Writeln(º ':10,MenuList[I]);
28áááááááEnd╗ √ Procedurσ MenuWritσ }
30ááááááá√ **¬ End of procedure for this program }
32ááBegin
34áá Loope≥ :╜ True;
36áá MenuList[0▌ :╜ 'MASTE╥ INVENTOR┘ MENU';
37áá MenuList[1▌ :╜ º 0║ Qui⌠ thσ Program';
38áá MenuList[2▌ :╜ º 1║ Ente≥ ß ne≈ iteφ t∩ thσ list';
39áá MenuList[3▌ :╜ º 2║ Deletσ aε iteφ froφ thσ list';
40áá MenuList[4▌ :╜ º 3║ Edi⌠ aε existinτ item';
41áá MenuList[5▌ :╜ º 4║ Quer∙ aε existinτ item';
42áá MenuList[6▌ :╜ º 5║ Lis⌠ item≤ belo≈ re-orde≥ level';
43áá MenuList[7▌ :╜ º 6║ Sale≤ transaction';
44áá MenuList[8▌ :╜ º 7║ Purchasσ transaction';
45áá MenuList[9▌ :╜ º 8:';
46áá MenuList[10]:╜ º 9║ Star⌠ ß ne≈ file';
48ááRepeat
50áá MenuWrite;
52áá Writeln;
53áá Write('Typσ iε numbe≥ oµ actioε desireΣ ║ ');
54áá Readln(Item);
56áá Casσ Iteφ of
57áá 0║ Halt;
58áá 1║ Begiε Writeln('Iteφ 1')╗ Delay(2000⌐ End;
59áá 2║ Begiε Writeln('Iteφ 2')╗ Delay(2000⌐ End;
60áá 3║ Begiε Writeln('Iteφ 3')╗ Delay(2000⌐ End;
61áá 4║ Begiε Writeln('Iteφ 4')╗ Delay(2000⌐ End;
62áá 5║ Begiε Writeln('Iteφ 5')╗ Delay(2000⌐ End;
63áá 6║ Begiε Writeln('Iteφ 6')╗ Delay(2000⌐ End;è64áá 7║ Begiε Writeln('Iteφ 7')╗ Delay(2000⌐ End;
65áá 8║ Delay(2000);
66áá 9║ Begiε Writeln('Iteφ 9')╗ Delay(2000⌐ End;
67áá Else
68áá Begin
69áá Writeln╗ Writeln;
70áá Writeln(º ':20,'N∩ actioε possiblσ fo≥ typeΣ input');
71áá Writeln(º ':30,'Typσ ß valiΣ number');
72áá Delay(2000)
73áá EnΣ √ Elsσ ..}
74áá End╗ √ Casσ Iteφ ..« }
76áá Unti∞ Loope≥ ╜ False;
78ááEnd.
Firs⌠ oµ all¼á noticσ line≤ │ anΣ 4« Iε previou≤ programs¼ we'vσ useΣ ì
thσ concep⌠ oµ ß strinτ declaratioε - eg¼ iε Par⌠ I╔ :
CustName := String[20];
wherσá thi≤á versioεá oµá Pasca∞ declare≤ ß strinτ oµ character≤á t∩á bσá ß ì
certaiε maximuφ length.
We'vσ alread∙ me⌠ datß type≤ sucΦ a≤ Integer¼á Booleaε anΣá Real«á Thesσ ì
arσá PRE-DEFINE─á iε PASCAL¼á jus⌠ likσ numeriπ anΣ strinτ type≤ iεá BASIC« ì
Therσá i≤ anothe≥ pre-defineΣ typσ - CHA╥ (which¼á a≤ yo⌡ ma∙ guess¼á i≤á ß ì
"characteróá type)«á ┴ variablσ oµ typσ CHA╥ i≤ an∙ onσ oµá thσá printablσ ì
ASCI╔á character≤á whicΦá thσá compute≥ use≤ - i⌠á ma∙á bσá aεá alphabetiπ ì
character¼á ß numeriπ digit¼á ß punctuatioε mark«á Wheε i⌠ i≤ defined¼á i⌠ ì
look≤ somethinτ likσ thi≤ -
Const Dash = '-';
Var NextLetter : Char;
áááThσ constan⌠ declaratioε i≤ equivalen⌠ t∩ BASIC'≤ A1$="-"╗á noticσ tha⌠ ì
áááiε PASCAL¼ singlσ quote≤ arσ useΣ arounΣ thσ character(s⌐ beinτ assigneΣ ì
ááát∩ thσ variablσ label«á However¼ thσ variablσ NextLette≥ caε consis⌠ oµ ì
áááonl∙ ON┼ character¼á whateve≥ i⌠ ma∙ be¼á sincσ typσ CHA╥ i≤ defineΣá a≤ ì
áááconsistinτ oµ onσ character.
Mos⌠ version≤ oµ PASCA╠ founΣ oε micro≤ definσ ß STRING[▌ type¼á whicΦ ì
i≤á reall∙ aε arra∙ oµ characters«á Iε Turb∩ Pascal¼á ß STRING[▌ typσá caε ì
var∙á dynamicall∙ iε lengtΦ betweeε ░ anΣ thσ defineΣ uppe≥ limi⌠ - iε thi≤ ì
i⌠ differ≤ froφ aε array¼ iε whicΦ thσ numbe≥ oµ element≤ i≤ fixed« S∩ ou≥ ì
defineΣ strinτ "CustNameó abovσ caε havσ betweeε ░ anΣ 2░ character≤ iε it« ì
Thσ longes⌠ strinτ caε bσ 25╡ character≤ iε length¼ jus⌠ a≤ iε BASIC.
Iµ wσ wan⌠ t∩ usσ ß lo⌠ oµ string≤ oµ characters¼á wσ caε definσ ß ne≈ ì
datß type«á Herσ iε line≤ │ anΣ 4¼ thσ ne≈ typσ i≤ ß strinτ oµ characters¼ ì
whicΦ caε havσ ß maximuφ lengtΦ oµ 30«á We'vσ calleΣ thσ typσ St3░ ¿ whicΦ ì
mean≤á "Strinτ oµ 3░ characters"¼á naturall∙ )«á So¼á alongsidσá integers¼ ì
reals¼á boolean≤ anΣ chars¼ wσ no≈ havσ ß ne≈ type¼ defineΣ b∙ us¼ whicΦ i≤ ì
ß strinτ oµ 3░ characters«á Iε linσ 10¼ wσ caε se⌠ u≡ aε array¼ usinτ thi≤ ì
ne≈ type« Wσ mus⌠ definσ thσ arra∙ iε thi≤ way¼ rathe≥ thaε a≤ ARRA┘ .« O╞ ì
STRING[30]¼á sincσá thσá arra∙ mus⌠ bσ defineΣ a≤ ßá defineΣá TYPE¼á eithe≥ ì
predefineΣ b∙ TP¼ o≥ defineΣ b∙ u≤ a≤ wσ havσ donσ i⌠ here.
Thi≤ arra∙ i≤ defineΣ a≤ ß one-dimensiona∞ array¼ containinτ 1╢ items« ì
I⌠ i≤ equivalen⌠ t∩ ß BASI├ arra∙ dimensioneΣ a≤ A1$(16⌐ - althougΦá that'≤ ì
no⌠á quitσ ho≈ it'≤ dimensioneΣ iε Beσ BASIC¼á oµ course«á EacΦ elemen⌠ iε ì
thi≤ arra∙ i≤ ß strinτ oµ no⌠ morσ thaε 3░ characters.
Iε linσ 1▓ wσ definσ ß variablσ a≤ ß Booleaε datß type« Thi≤ typσ caε ì
takσ onl∙ thσ value≤ Truσ o≥ False¼á anΣ i≤ generall∙ useΣ fo≥ sucΦá thing≤ ì
a≤á settinτá flags«á Ofteεá iε BASIC¼á wσ equatσ ░ t∩ Falsσ anΣá -▒á ¿á o≥ ì
sometime≤á +▒á ⌐ t∩ True¼á anΣ se⌠ ß variablσ t∩ bσ onσ o≥ othe≥á oµá thesσ ìèvalue≤ t∩ ac⌠ a≤ ß flag«á Iε fact¼ wha⌠ wσ arσ doinτ iε BASI├ i≤ writinτ ß ì
numeriπá equivalen⌠ oµ ß PASCA╠ Booleaε variable«á Iµ yo⌡ looδ a⌠ line≤ 3┤ ì
anΣ 76¼ you'l∞ seσ thσ variablσ iε use.
Iε line≤ 14-3░ wσ definσ ß Procedure« ┴ Procedurσ iε Pasca∞ i≤ likσ ß ì
GOSU┬ subroutinσ iε BASIC«á Likσ sucΦ ß routinσ iε Beσ BASIC¼ yo⌡ caε pas≤ ì
parameter≤ betweeε thσ maiε bod∙ oµ codσ anΣ thσ procedurσ iµ yo⌡ wan⌠á to« ì
However¼á therσá i≤ onσ biτ difference¼á whicΦ yo⌡ mus⌠ gras≡ holΣ of«á Iε ì
PASCAL¼ iµ yo⌡ declarσ ß variablσ iε thσ procedure¼ sucΦ a≤ wσ havσ donσ iε ì
linσ 19¼á theε tha⌠ variablσ caε bσ useΣ ONL┘ INSID┼ TH┼ PROCEDUR┼ iε whicΦ ì
i⌠á i≤á declared«á I⌠ i≤ calleΣ ß LOCA╠ variable¼á iε distinctioεá t∩á an∙ ì
variablσ declareΣ iε thσ maiε bod∙ oµ thσ program¼á whicΦ arσ calleΣ GLOBA╠ ì
variables« Iε mos⌠ version≤ oµ BASIC¼ al∞ variable≤ arσ GLOBAL.
Iεá ou≥á procedure¼á wσ declarσ ß variablσ labelleΣ I«á Iµ wσá haΣá ß ì
simila≥á declaratioεá iε linσ 11¼á PASCA╠ woulΣ seσ thσ Globa∞á variablσá ╔ ì
declareΣá iεá linσ 1▒ anΣ thσ Loca∞ variablσ ╔ declareΣ iε linσ 1╣á a≤á tw∩ ì
totall∙ DIFFEREN╘ variables«á The∙ arσ helΣ a⌠ differen⌠ addresse≤ iεá thσ ì
computer'≤ memory¼ anΣ therσ i≤ n∩ wa∙ tha⌠ thσ compile≥ wil∞ confusσ them.
Procedure≤á iε PASCA╠ arσ declareΣ BEFOR┼ thσ maiε bod∙ oµ thσ prograφ ì
- therσá i≤á n∩ choicσ iε thσ matter¼á a≤ therσ i≤á iεá BASIC¼á wherσá sub-ì
routine≤ caε bσ writteε anywherσ yo⌡ fancy«á Thi≤ particula≥ procedurσ ha≤ ì
n∩ parameter≤ passeΣ t∩ it.
Therσ i≤ n∩ equivalen⌠ t∩ ß READ/DAT┴ BASI├ statemen⌠ iε PASCAL«á Thσ ì
onl∙á wa∙ t∩ assigε value≤ t∩ aε array¼á sucΦ a≤ wσ wan⌠ t∩ d∩ here¼á i≤ t∩ ì
writσ i⌠ ou⌠ a≤ wσ havσ donσ iε line≤ 3╢ t∩ 46.
Iε line≤ 4╕ t∩ 7╢ wσ havσ ß loop«á Thi≤ i≤ ß REPEA╘ - UNTI╠ loop« I⌠ ì
i≤á differen⌠ froφ ß D╧ - WHIL┼ loop¼á iε tha⌠ thσ conditioε i≤ no⌠á testeΣ ì
unti∞ thσ UNTI╠ statemen⌠ i≤ reached«á Thi≤ mean≤ tha⌠ thσ loo≡ i≤á alway≤ ì
executeΣá once«á Iεá thi≤á case¼á i⌠ wil∞ bσ repeateΣá unti∞á thσá Booleaε ì
variablσá "Looperó i≤ se⌠ t∩ False«á Iε fact¼á thi≤ i≤ neve≥ donσ iεá thi≤ ì
program¼á anΣá wσ havσ createΣ aε endles≤ loop«á Normally¼á iε ßá program¼ ì
therσ woulΣ bσ aε elegan⌠ wa∙ t∩ breaδ ou⌠ oµ sucΦ ß loop¼ whereb∙ "Looperó ì
i≤ se⌠ t∩ True«á Here¼ i⌠ i≤ optioε "0ó oµ thσ menu« dBAS┼ I╔ enthusiast≤ ì
migh⌠ bσ remindeΣ herσ oµ thσ loo≡ "D╧ WHIL┼ ╘ .« ENDDO".
Noticσá iεá linσá 5░á ho≈ thσ Procedurσ i≤ calleΣá oεá fo≥á execution« ì
Simpl∙ b∙ usinτ thσ Procedure'≤ name¼ whicΦ thσ prograφ knows¼ sincσ i⌠ wa≤ ì
defineΣ beforσ i⌠ wa≤ called¼ tha⌠ Procedurσ i≤ executed« Somσ version≤ oµ ì
BASI├ arσ ablσ t∩ calleΣ sub-routine≤ b∙ name¼á rathe≥ thaε G╧ SUBbinτ t∩ ß ì
linσ number.
Iεá line≤á 5╢á t∩ 74¼á wσ havσ ß CAS┼ statement«á Thi≤á i≤á simpl∙á ß ì
differen⌠ wa∙ oµ writinτ multiplσ I╞ .«á THENs«á Wσ coulΣ havσ writteε thσ ì
codσ a≤ -
If Item = 0 then Halt
Else if Item = 1 then Begin .. End
Else if Item = 2 .... and so on.
Thi≤á i≤á ßá mucΦ easie≥ wa∙ t∩ writσ ßá multiplσá choicσá conditiona∞ ì
statement«á Noticσá tha⌠ iε TURB╧ PASCAL¼á Casσ statement≤ arσ alloweΣá aε ì
ELS┼ clause¼á whicΦ simpl∙ mean≤ ó ..«á iε an∙ othe≥ case¼á d∩ thi≤ ..«á "« ì
Notice¼á too¼á tha⌠ thσ variablσ Iteφ froφ linσ 5┤ i≤ useΣ iε linσ 5╢ afte≥ ì
thσ reserveΣ worΣ CASE«á Then¼ iε ß list¼ arσ thσ allow-ablσ value≤ i⌠ caε ì
takσ - ▒ througΦ ╣ - followeΣ b∙ thσ ELSE.
Thσá verΓá DELA┘á stop≤ executioε fo≥ thσá defineΣá numbe≥á oµá milli-ì
seconds« Thi≤ numbe≥ mus⌠ bσ aε integer« Iε Beσ BASIC¼ yo⌡ woulΣ probabl∙ ì
PLA┘ 0,1╢ t∩ gaiε aε equivalen⌠ effect« Thσ verΓ HALT¼ iε linσ 57¼ i≤ iε ì
fac⌠ ß predefineΣ procedure¼ equivalen⌠ t∩ BASIC'≤ EN─ verb.è
Thi≤á i≤á aε eas∙ wa∙ t∩ develo≡ ß prograφ witΦ ßá menu«á Thσá actioε ì
takeε iε eacΦ casσ herσ i≤ simpl∙ t∩ prin⌠ ou⌠ oε thσ VD╘ thσ numbe≥ oµ thσ ì
iteφá chosen«á Thi≤ i≤ ß calleΣ ß men⌡ "stubó - wheε thσ routinσ fo≥á tha⌠ ì
actioεá i≤ codeΣ anΣ debugged¼á it≤ procedurσ cal∞ wil∞ bσ sub-stituteΣ fo≥ ì
thσ stub¼á and¼ sincσ botΦ men⌡ anΣ procedurσ arσ correct¼ therσ wil∞ bσ n∩ ì
neeΣ fo≥ furthe≥ testing« You'l∞ notice¼ too¼ ho≈ ß sequencσ oµ statement≤ ì
caε bσ writteε oε onσ line¼á as¼á fo≥ example¼ iε linσ 58¼ jus⌠ a≤ iε BASI├ ì
wσ caε havσ ß multi-statemen⌠ line.
HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP
I≤á i⌠ possiblσ t∩ usσ thσ TDCOP┘ prograφ witΦ ß machinσ codσ typσá prograφ ì
oεá thσá COMPUTE╥ I╬ ┴ BOO╦ MICROBEE┐á ╔ trieΣ thσ mod≤ a≤ outlineΣ iεá Thσ ì
CATCHE╥ Vo∞ │ ú ┤ bu⌠ ╔ haΣ n∩ success«á Part≤ 1¼ 2¼ │ oµ thi≤ procedurσ d∩ ì
not match the memory contents of my BEE. Brian Riley. Answer to EDITOR.
HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP
1 EQUALS 2 ?
HOPIN╟ YO╒ CA╬ CORREC╘ TH┼ MISTAK┼ MAD┼ I╬ TH┼ MARC╚ CATCHE╥ A╙ YO╒ CA╬ SE┼ ì
╔ HAV┼ TRIE─ T╧ PROV┼ THA╘ ┴ ╜ ▒
LET X = 1 then - X = - 1
now add X ^ 2 to both sides of the equation
- X + ( X * X ) = - 1 + ( X * X )
substitute 1 for X
now -1 + ( 1 * 1 ) = - 1 + ( 1 * 1 )
then -1 + 1 = -1 + 1
0 = 0 LES MARSHALL.
MBUG_AUSTRALIA_INC._TAPE_LIBRARY
P.O. BOX 45, CANTERBURY. 3126 JULY.1985.
ADVENTURE_GAMES GENERAL_PROGRAMS GENERAL_GAMES
ADVENTURE LAND BIORHYTHMS etc AROUND/DOUBLE TRIANGLE
BLACK FRIDAY * CHATTERBOX ASTEROIDS **
COLDITZ CHPLUS BACGAMMON **
FRANKENSTIEN COMPOSER BEE ** CAMEL
KIN DECISION MAKER * CHASE/WUMPUS1
KUNG FU DOMESTIC ACCOUNTS * CHESS
MATHS ADVENTURE EDUPACK1 CHOPPER **
MISSION IMPOSSIBLE EDUPACK2 CONCENTRATION
PIRATE LCG/3D-PLOT * COSMIC JS
SCHMOO CITY * LEAGUE LADDERS * DEFENDER **
SURVIVE LOGO ** DRAUGHTS
THUNDER ROAD LUCKY DIP EMU JOUST **
WUMPUS2 MAD LIB GALAXY JS
MATHS RACE GHOST MUNCHER **
MINDREADER * GOBBLE/ASTRO *
MONKEY MATHS HURKLE/CRICKET
UTILITY_PROGRAMS MULTI GRAPHER* INVADERS JS
PCG GENERATOR * KILOPEDE **
DEBUGGER 16/32k * PCG TUTOR KING KONG **
DISEMBLER 16/32k PILOT LOGIC DICE *
ESKEY 16/32k RECORDS PROGRAM * METEOR RESCUE **
HEXDUMP * (inc source) SPELLBOUND * MISSILE JS
LOADER v1.1/v1.3 TYPING/SOLITAIRE ROBOTMAN JS
MEMORY DISPLAY 16/32k SKI SLALOM *
SOURCE GENERATOR 16/32 SQUARES/TRIANGLES
TRS-BEE/TAPE DOCTOR ** SUBTERRA
TANKS
TARGET
** New programs this month (max 2 per member) TERMITE
* New programs this year TIC-TAC-TOE/FOUR
UFO ATTACK è ZTREK
LIBRARY RULES
1. Library members must be financial members of MBUG AUSTRALIA INC.
2. Membership of the tape library is $10. ($5 is held as security deposit)
3. Loans are made for a maximum period of 1 calendar month.
4. A maximum of 5 tapes per member per month can be lent.
5. Hiring fee is $2 per tape per month.
6. Loans can be arranged by mail through the above address.
7«á Postagσá withiεá Australißá i≤ $▒ fo≥ ▒ o≥ ▓ tape≤ ª $1-5░ fo≥ │á t∩á ╡ ì
tapes.
8. Tapes may reserved.
9. Reservations will only be held until the next 2nd Wednesday meeting.
HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP
I≤á therσá an∙á wa∙ t∩ checδ iµ ß printe≥ i≤ connecteΣ anΣ "O╬á LINE"éá from ì
either BASI├ o≥ CP/═ ??┐ Send answer to EDITOR.
HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP-HELP
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
Iµá i⌠ take≤ si° second≤ t∩ strikσ six¼á ho≈ man∙ second≤ wil∞ i⌠ takσ ì
thσ cucko∩ clocδ t∩ strikσ nine.
QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ-QUIZ
BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SA
CODE DESCRIPTION PRICE
CS30 Blank C-30 Cassettes $ 1.50
CB30 Blank C-30 Cassettes (20 per box) $25.00
DSD5 Blank 5" Disks (Verbatim dsdd) $ 4.00
DBD5 Blank 5" Disks (10 per box) $40.00
SSD5 Blank 5" Disks (ssdd) $ 2.50
DB85 Lockable 5" Disk box (holds 85) $22.00
PR80 Carbon Printer Ribbon
(suit xyz.80 printers) $ 9.00
**PP05 500 sheets cont. printer paper
(240mm wide) $10.00
TC01 Back issues of "The Catcher" $ 1.50
TC02 Back issues of "The Catcher"
Vol 2 No 6/7 $ 3.00
SM01 SIG/M Catalog (hard copy) $ 7.00
PC01 Modem PCB & Instructions $25.00
DC01 Dust Covers for `BEE $ 6.00
SS35 Blank 3.5" Disks (FUJI ssdd) $ 5.00
SB35 Blank 3.5" Disks (10 per box) $47.00
Bound Volumes of "The Catcher"
BC01 Volume 1 (Oct.82-Sept.83) $15.00
BC02 Volume 2 (Oct.83-Sept.84) $15.00
** not normally available for postal purchase
All postal order to be sent to: MBUG AUSTRALIA SALES
P.O.BOX 253, COBURG
VICTORIA 3058
To avoid delays all orders must include cheque, postal order or
Bankcard authorization for the total amount (inc. postal & handling
charges). Please allow 14 days for the return of goods, or pick-up at
the next meeting.
Please charge my Bankcard: No.___ __ ___ ______
Expiry Date __/__/____ Signature.................è
Members Name :____________________________ Membership No. ______
Address :_______________________________________________________
Code Item Quantity Price Total Cost
____ _____________________________ ________ _____ __________
____ _____________________________ ________ _____ __________
____ _____________________________ ________ _____ __________
____ _____________________________ ________ _____ __________
POSTAL FEES (within Australia) Sub-Totals Items $_________
$10 to $20 order :$2.50 Postage & handling Fee $_________
$20 to $50 order :$5.00
greater than $50 :P.O.A. Total Order $_________
Certified Mail add $0.85 Registered Mail add $3.50
MINIMUM POSTAL ORDER AMOUNT $10.00
BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SALES*BAZAAR*SA
SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE
MBUG AUSTRALIA INCORPORATED
NOMINATION FORM
I, ..................................................................
WISH TO NOMINATE FOR THE POSITION OF ................................
FOR THE CLUB YEAR 1985/86.
NAME OF PROPOSER ......................SIGNATURE ......................
NAME OF SECONDER ......................SIGNATURE ......................
I¼ .................« thσ persoε nominateΣ abovσ d∩ agreσ t∩ thσ nominatioε ì
anΣ iµ electeΣ wil∞ abidσ b∙ thσ rule≤ oµ thσ association.
SIGNATURE OF NOMINEE .......................DATE ......................
Post to MBUG AUSTRALIA INC. P.O. BOX 157 NUNAWADING Vic. 3131.
The positions being held up for election are as follows:
PRESIDENT¼á VIC┼á PRESIDENT¼á TREASURER¼á SECRETAR┘ anΣ PUBLI├ OFFICE╥á anΣ ì
eight (8) positions on the committee.
N.B« Al∞ nominee≤ anΣ seconder≤ MUSTé al∞ bσ finincia∞ member≤ oµ MBU╟ AUS╘
INC.
SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE SPECIAL NOTICE
EDITORS NOTE:
Yo⌡á ma∙ photocop∙ thi≤ pagσ anΣ usσ i⌠ a≤ you≥ nominatioε forφ O╥ yo⌡á ma∙ ì
senΣá t∩á thσ abovσ addres≤ you≥ owε forφ PROVIDIN╟ i⌠ contain≤ ALLé oµá thσ ì
abovσá information«á Iµ i⌠ doe≤ no⌠ al∞ thσ abovσ i⌠ wil∞ bσ deemeΣá t∩á bσ ì
INVALID. ED.
BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TI
Thσá followinτá prograφ show≤ yo⌡ wha⌠ i≤ involveΣ iε switchinτ thσ TO╨á 4δ ì
with the BOTTOM 4k in NETWORK:
First you put in ram (with the monitor) the following HEX codes
Starting at 5000 h: 3E FF D3 0A DB 0A C9
And at 5010 h: 3E 00 D3 0A DB 0A C9
The routine at 5000h sets the top 4k and
at 5010h sets the bottom 4k.èThσá followinτá i≤á thσ basiπ listinτ whicΦ wil∞ tes⌠á thi≤á switchinτá anΣ ì
alternatively location E000h is printed to the screen.
00010 GOSUB 100: GOSUB 110: GOSUB 100: GOSUB 130: GOTO 10
00020 END
00100 PRINT PEEK (57344): FOR X = 1 TO 700: NEXT X: RETURN
00110 USR(20480)
00120 RETURN
00130 USR(20496)
00140 RETURN
Thi≤á prograφ wil∞ worδ onl∙ iµ yo⌡ havσ aε 8δ networδ roφ locateΣ iε ßá 4δ ì
position.
Happy hacking. E. van Bommel.
BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TIP--BASIC-TI