631 lines
41 KiB
Plaintext
631 lines
41 KiB
Plaintext
NUMBER OF LINES: 629
|
||
1 If you are in need of help, you need but ask.
|
||
2 Welcome to BWMS (BackWater Message System) Mike Day System operator
|
||
3 *********************** REMOVED: 5 DEC 82 ********************************
|
||
4 GENERAL DISCLAIMER: BWMS IS NOT RESPONSIBLE FOR ANY INFORMATION PLACED ON
|
||
5 THIS SYSTEM.
|
||
6 BWMS was created as an electronic bill board. BWMS is a privatly owned
|
||
7 and operated system which is currently open for use by the general public.
|
||
8 No restrictions are placed on the use of the system.
|
||
9 It is intended that the system be normally used for messages and
|
||
10 advertisments by the users. As the system is privatly owned, I retain the
|
||
11 right to remove any and all messages from the system which are offensive
|
||
12 to me. Additionally because of the limited size of the system, it will be
|
||
13 periodically purged of older messages. (only 629 lines of data can be saved)
|
||
14 To leave a message, type 'ENTER' and use ctrl/C or break to get out
|
||
15 of the enter mode. The message is automaticly stored.
|
||
16 If after entering the message you find you made a mistake,
|
||
17 use the replace command to replace the line.
|
||
18 To exit from the system, type 'OFF' then hang up.
|
||
19 ********************************************************************
|
||
20
|
||
21 ##########################################
|
||
22 ## ##
|
||
23 ## BE SURE TO BRING ALL OF YOUR ##
|
||
24 ## QUASI- OR SEMI-QUASI-JUNQUE ##
|
||
25 ## TO THE PORTLAND COMPUTER SOCIETY ##
|
||
26 ## S W A P M E E T ##
|
||
27 ## ##
|
||
28 ## NOVEMBER 20, 1982 ##
|
||
29 ## ##
|
||
30 ## ROBERT MURPHY HALL ##
|
||
31 ## 3736 SE 79TH AVE ##
|
||
32 ## PORTLAND, OREGON ##
|
||
33 ## ##
|
||
34 ## THIS IS A LARGE HALL WITH PLENTY ##
|
||
35 ## OF TABLE SPACE AT $2 PER TABLE ##
|
||
36 ## FOR SELLERS AND NO ADMISSION FEE. ##
|
||
37 ## SETUP TIME IS 11:00 AM WITH MEET ##
|
||
38 ## OPEN FROM 12:00 TO 4:00. PLENTY ##
|
||
39 ## OF FREE PARKING, TOO. CALL NEAL ##
|
||
40 ## BONOME AT xxx-xxxx FOR DETAILS. ##
|
||
41 ## ##
|
||
42 ##########################################
|
||
43
|
||
44 Just a note, in regard to the ability of the Atari to handle COBOL/FORTRAN.
|
||
45 with the Z80 card which allows the Atari to handle CP/M the afore mentioned
|
||
46 programs are available to run under CP/M. As such I fail to see the problem.
|
||
47 I know, they are not 'main frame' implimentations, but I have seen main frame
|
||
48 implimentations that stink far worst then the micro versions. As for the
|
||
49 other things on the Atari, I too find the membrane keyboard a piece of trash.
|
||
50 But if you don't like it you can always get the 800 which has a 'normal' type
|
||
51 keyboard. It always amazes me when someone says that a computer is a peice
|
||
52 of junk because it can't do such and such.
|
||
53 A computer performs the function that it was designed to perform. If it does
|
||
54 that task well it is a good computer. If it doesn't it is a poor computer.
|
||
55 As far as the task it performs being good or bad is a again a silly notion
|
||
56 that it has some relation to being required to run 'business' type programs.
|
||
57 The highest volume 8 bit micro is the 6502 (which the Atari uses), but the
|
||
58 highest volume micro of all is the TMS1000 which is a 4 biter!!! (What do you
|
||
59 think TI uses in all those calculators it sells!) And it has found its
|
||
60 place in many things from coffee pots to microwave ovens to washing machines.
|
||
61 Yes,these are computers, they perform just as vital a function as the IBM 370's
|
||
62 Just because they aren't as flashy doesn't mean they are any less valuable.
|
||
63 From a performance standpoint, there are few computers around that can match
|
||
64 the graphics abilities of the Atrai at the price range. There is far more to
|
||
65 a computer then the hardware it runs with, a far more important function is
|
||
66 the software that is available to use that hardware. and the IBM is currently
|
||
67 sorely lacking in that for graphics (compared to the Atari). Finally, you may
|
||
68 consider COBOL to be a more respectable langauge (I don't, but thats another
|
||
69 story) but I'll take $20-$50 for 100,000 games any day over $500-$1000 for
|
||
70 100 business programs. (If you don't think these numbers are representative
|
||
71 of the real life, you obviously aren't in the business.) Not only does it
|
||
72 pay more, but there is a whole bunch less headaches involving stupid idiots
|
||
73 who don't know which end of a floppy disk to put in the machine! As for the
|
||
74 value of the game programing, I feel it is of extreme! importance. I have not
|
||
75 seen a single COBOL programer who really understood the problems of real time
|
||
76 interactive processing because the program isolates them from this very thing
|
||
77 by makeing it difficult to impossible to even do. On the other hand there
|
||
78 are very few games programers that I know who are not fully aware of the
|
||
79 problems in this. There will be far more small interactive machines sold
|
||
80 for various purposes then any other type of computer, and they most definatly
|
||
81 will not be written in COBOL!!!!! These programers will have to come from
|
||
82 someplace, and since the schools aren'T doing anything to provide them, the
|
||
83 same old thing will happen that happened to the micro to begin with, they
|
||
84 will come from the garages of America. A bigger hammer aproach does not
|
||
85 solve the problem, it only pulverises it into meaningless little problems.
|
||
86 P.S. Just so you don't think I am some kid out of school who doesn't know
|
||
87 any better, I design computers for a living. I do not own an Atari, I use
|
||
88 to have a ZX80 which I gave to my father, I own several computers including
|
||
89 an heathkit H-8, and an IMSAI S-100 machine. My first langauge was Fortran
|
||
90 I do most of my work on a computer I designed and built myself (Z80 two
|
||
91 5 inch floppies and 256K of RAM) I have written commercial software
|
||
92 and non-commercial (public-domain) software. I have written numerous
|
||
93 articles on computers for various publications, and currently write
|
||
94 a telecommunications column for Compute! magazine, and last but not least
|
||
95 I own and run this message system. That's right, you guessed it, I am the
|
||
96 one and only (Thank god!!!)
|
||
97 ********* CISTOP MIKEY ******* 16 NOV 82 ******** 8:33 PM ************
|
||
98 P.S. I've even written a game or two. (Golly!)
|
||
99 That ought to keep 'em going for at least a week about how wrong I am.
|
||
100 ***********************************************************************
|
||
101 Dear Mikey;
|
||
102 You are talking raw sense. I did not think that was permited on this
|
||
103 system! But if the CISTOP likes it, swing with it! I agree with your
|
||
104 thought on cobal. It's almost criminal to put a batch oriented language
|
||
105 on a perfectly good, interactive, microcomputer.
|
||
106 the Phantom Glitch
|
||
107 11/16/82 22:20
|
||
108
|
||
109 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
110
|
||
111 Looking at the Want Ads in a recent sunday Oregonian,
|
||
112 I noticed that Cobol Programmers were most in demand -
|
||
113 but right on their heels was the demand for Assembly
|
||
114 Language programmers, and the Assembly Language applications
|
||
115 paid more! Most Commercial game software is written
|
||
116 in Assembly Language.
|
||
117 It would seem to me that Learning Assembly Language
|
||
118 would be potentially more beneficial to the majority of
|
||
119 Micro owners, while I have seen no programs advertised that
|
||
120 require Cobol.
|
||
121 **************************************************************
|
||
122 It is interesting that most, if not all of the ads for COBOL programmers
|
||
123 state the particular operating system and hardware that they want you to
|
||
124 have 2 to 3 years of experience using. At that rate, all they are going
|
||
125 to get are a lot of recycled programmers. I wonder how all of the new
|
||
126 blood gets into the seemingly closed loop. Along these lines, there is
|
||
127 a good article in the South Metro section of the Oregonian this morning
|
||
128 relating the opinion that the jobs for programmers are drying up (from
|
||
129 the point of view of an educator at Clackamas CC). Has the balloon
|
||
130 burst?
|
||
131 {}{}{}{}{}{}{}{} Analog Alan {}{}{}{}{}{}{}{} 1825 17 Nov 82 {}{}{}{}{}{}{}{}
|
||
132 HI THERE....THIS IS THE FIRST MESSAGE I HAVE FELT THE URGE TO LEAVE ON
|
||
133 A BULLETIN BOARD, BUT YOUR COMMENTS INSPIRED IT.....IF YOU REALLY WANT
|
||
134 TO WRITE GAMES, YOU SHOULD INVESTIGATE "C" FOR A LANGUAGE....I WORK WITH
|
||
135 A SOFTWARE COMPANY (EVRYWARE) WHICH WRITES ACTION GAMES FOR THE HEATH-
|
||
136 ZENITHLINE (IF YOU HAVE AN H-19 ON YOUR H8, LET ME KNOW), AND ALL OUR
|
||
137 STUFF IS DONE IN "C".....IT'S A MARVELOUS LANGUAGE, AS IT DOES A LOT OF THE
|
||
138 TEDIOUS REPETITIVE STUFF FOR YOU THAT YOU USUALLY HAVE TO DO IN ASSEMBLY
|
||
139 LANGUAGE, BUT STILL HAS ALL THE POWER AND STRUCTURE......MAUREEN HACKLEY
|
||
140
|
||
141 #######################################################################
|
||
142
|
||
143 Many of the idiots who blather about which language is better have
|
||
144 apparently not studied the history of computing. Way back when
|
||
145 Turing proved that any program could be expressed in a language
|
||
146 with only 5 (yes, five) instructions, but we all know that is a
|
||
147 lot easier to do it with a good rich language. The design of
|
||
148 computer languages is changing because we are learning more about
|
||
149 how. COBOL was one of the first, and as such has certain
|
||
150 caracteristics not too good for modern machines and programmers.
|
||
151 (It is oriented to cards and batch.) It of course does not have
|
||
152 any facilities for interactive or graphics use: these weren't
|
||
153 invented yet. Most ads for COBOL programmers are not for people
|
||
154 to write new programs, but rather to maintain old programs. This
|
||
155 is not an easy job, either; but not as "creative".
|
||
156 Then came BASIC, written for a specific purpose: to teach
|
||
157 beginners to program. It was therefore VERY simple. Dijkstra
|
||
158 condemned it bitterly. However, it worked, for what it was designed
|
||
159 for. It was small, and could be put on the new microcomputers.
|
||
160 However, it was too simple-minded, so it was IMPROVED. It became
|
||
161 nonstandard. But it developed I/O handling, disc handling, graphics
|
||
162 commands, and it grew to be a business language. It also sprouted
|
||
163 such strays as compilers, double precsion, and preprocessors for
|
||
164 structured programs. However, it is still based on Dartmouth's
|
||
165 simple training aid, and isn't very good at anything, especially
|
||
166 in the common interpreted versions.
|
||
167 If that wasn't enough, along came another TEACHING language,
|
||
168 called Pascal. Again, it was intended as a teaching language, so
|
||
169 it did not need (or allow) fancy I/O, or high precision. What's
|
||
170 worse, as it was intended to teach a strict, precise programming
|
||
171 style, it demands a strict style, and this can really get in your
|
||
172 way. <Why is it necessary to insert semicolons at the end of line?
|
||
173 -Because Wirth thought this would better instill the idea of 'end
|
||
174 of statement'; but 'end' does the same, and both can not be
|
||
175 together.> Again, not a general purpose language. SO, it is being
|
||
176 IMPROVED. (Better known as 'not compatible'.)
|
||
177 There is no general purpose language. All we have are written-
|
||
178 down dinosaurs like micro COBOL, or 'improved' teaching languages
|
||
179 like BASIC. I hope ADA flies, it is supposed to be all things for
|
||
180 all people. ( But so was PL-1.)
|
||
181 Of course, I also use C, but it isn't really for use part-time
|
||
182 hackers. It was written for, and by high level programmers. It is
|
||
183 about as cryptic as APL. It is a structured language, and supports
|
||
184 good data structures, but is close to assembly language in many
|
||
185 ways. For you FORTH advocates, it is extensible. However, it is
|
||
186 very unlike Pascal in one important respect: it is NOT a complete
|
||
187 system, but much more like a macro assembler. You use your own
|
||
188 text editor, your own operating system, and then build your program
|
||
189 out of small bits, each of which can be used later. A program in C
|
||
190 can be nothing more than a series of function names, all of which
|
||
191 are simply separate files, but here seem to be powerful,
|
||
192 individualized commands that act like say, extended BASIC 'print'
|
||
193 statements, with formating. It is very free-form, and rather
|
||
194 than having the syntax checker in the C compiler, it uses a separate
|
||
195 program called lint to remove them, or tell you about them.
|
||
196 Unfortunately, no small, easy to use interpreter is available for
|
||
197 micros.
|
||
198
|
||
199 Bend your mind around a book called "The C Puzzle Book" by Alan
|
||
200 Feuer. The puzzles look simple, and in start that way, but..
|
||
201
|
||
202 ......................................B.A.D........2:20/11-20-82.......
|
||
203 I just looked at DB, and must say I'm not impressed. Atari vs IBM?
|
||
204 Who's kidding whom? $200 vs $2000? In any case, if you can talk to
|
||
205 BWMS, you are using either a 23 bit computer (with 37 bit
|
||
206 instructions) or a 24 bit computer. The world is not wholly micros.
|
||
207 In case you were wondering what computer is a 23 bitter, pick up
|
||
208 the telephone and listen to that hum you here. It probably comes
|
||
209 from a computer called 'ESS', if you are served by Ma Bell, and
|
||
210 that uses 23 bits. It's main memory consists of up to 12 'stores'
|
||
211 of 131,072 words (only 44 bits per word, though) each. It's slow,
|
||
212 running at about 5.5 micro seconds, but even so it handles something
|
||
213 like 30,000 time share terminals called telephones. Part of the
|
||
214 advantage it has is called pipelining, in that is has 3 instructions
|
||
215 running at the same time. I suppose I should add that it runs 24
|
||
216 hours a day. Yes, I said 44 bit memory- 37 for instruction, and
|
||
217 Hamming error correction if needed. This all in electrically
|
||
218 alterable PROM.
|
||
219 As to the lead Apple and Radio Shack have in sales, both IBM and
|
||
220 Sinclair expect to sell more units next year than either of the 2
|
||
221 above have in all history. I don't know about Atari, but I expect
|
||
222 it too will be in the millions, soon.
|
||
223 ************ Look out, here come the Japanese!!
|
||
224 ....................................B.A.D...(again).......
|
||
225 ______________________________________________________________
|
||
226 regarding FORTRAN & COBOL as opposed to a combination of BASIC
|
||
227 & Assembly level routines. The reason why FORTRAN is better is
|
||
228 that you can do high-level math without taking weeks to get
|
||
229 all those machine language routines figured out! I've never used
|
||
230 COBOL (and don't have any real interest in it) so I can't say
|
||
231 anything about it.
|
||
232 Getting back to FORTRAN vs BASIC, I would rather spend
|
||
233 my time on the PROGRAM logic than on re-inventing an ARCSIN
|
||
234 function. BASIC is great for string-handling, but FORTRAN is
|
||
235 better for math. They're about even as far as I/O is concerned.
|
||
236 When BASIC's based on the proposed ANSI standard start hitting
|
||
237 the market (in 2-3 years!) THEN BASIC will be preferrable to
|
||
238 FORTRAN. Right now, there aren't that many BASICs that allow
|
||
239 TRUE sub-programs & sub-routines!
|
||
240 _____________________________________________________________
|
||
241 I think that all this goes to show that the advantage or
|
||
242 disadvantage of any particular computer language (PROGRAM!!!)
|
||
243 depends entirely on what your application is.
|
||
244 Incidently, the Atari has Layered Interrupts to the
|
||
245 point that it capable of Multi-processing!!
|
||
246 To my knowledge, these levels of interrupts are
|
||
247 not available to its nearest competiters-Apple, TRS, Commodore, etc.
|
||
248 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||
249 /////////////////////////////////////////////////////////////////
|
||
250
|
||
251 Here's my beef about Basic: Presumably a 'teaching language'
|
||
252 should NOT teach bad programming habits, such as writing throwaway
|
||
253 programs. It should teach organized, structured programs whose
|
||
254 function is provable, easily modifiable, easily understandable by
|
||
255 someone else, easily maintainable, etc. Basic does none of these
|
||
256 things.
|
||
257 The advantage of a 'standard' is that everyone can design
|
||
258 to that standard and everything will be compatible. That's the
|
||
259 advantage. The disadvantage of a 'standard' is that it inhibits
|
||
260 (to some extent) imagination and invention.
|
||
261 In most cases, the advantages outweigh the disadvantages.
|
||
262
|
||
263 But with Basic, it has all the disadvantages of a standard, but
|
||
264 none of the advantages. It's the worst of both worlds.
|
||
265
|
||
266 //////////////////////////////////////////////////////////////////
|
||
267 ??????????????????????????/////\\\\\?????????????????????????????
|
||
268 Ah, folks, you seem to be missing, or ignoring the point, with all
|
||
269 this comparison of apples and oranges. Someone a few lines up made
|
||
270 the point that the best language was application-dependent. Too
|
||
271 true. ALSO, the best programming style is RESULT-dependent.
|
||
272
|
||
273 There are some folks who write clever, imaginative, poorly structured
|
||
274 and unmaintainable code, and once the result is achieved, there
|
||
275 are OTHER folks who come along a use the ideas of the "sloppy"
|
||
276 "wizard" to create a marketable and/or maintainable product.
|
||
277
|
||
278 Rarely will you find the person who can do what the wizard does, and
|
||
279 also produce really clean code. And all the error-checking compilers
|
||
280 in the world won't help, because that wizard will either find, or
|
||
281 invent, another language which won't burden him with constraints.
|
||
282
|
||
283 Let me modify the "can do" above -- many "wizards" could produce
|
||
284 clean code, but for (often irrational, absurd, and ludicrous) reasons
|
||
285 of their own, WON'T!!
|
||
286
|
||
287 But this world needs Ataris and IBMs and Apples and DECs and DGs
|
||
288 and even etceteras, and wizards and suits and beards and nerds,
|
||
289 and it isn't even reasonable to expect anyone to be happy about it,
|
||
290 but I don't think it's unreasonable to expect most folks to be
|
||
291 aware of it.
|
||
292 ???????????????????????????????////\\\\??????????????????????????
|
||
293
|
||
294 I second the thought. People who think they have the right to
|
||
295 tell me how to write programs forget that it's my machine and I will
|
||
296
|
||
297 write the code the way I feel like it. I don't like 'structured' pro-
|
||
298 graming shoved down my thrat and if I wan't to use GOSUB's, I will.
|
||
299 the Phantom Glitch.
|
||
300 //////////////////// 11/20/82 ///// 22:00 /////////////////////////
|
||
301 Here are a few more thoughts based on the above comments.
|
||
302 I noticed that there appears to be a confusion as to what BASIC
|
||
303 and PASCAL teach. It is even more interesting that they would
|
||
304 be passed off as worthless simply because they originally were
|
||
305 designed as teaching langauges. The very act of using a langauge
|
||
306 to teach something insures it continuance as a use langauge. It
|
||
307 takes time to learn new things, and if you learn with BASIC you
|
||
308 will stick with it until the need for something else presses you
|
||
309 into learning a different langauge. This is not a bad thing either,
|
||
310 if you know something very well, you will operate with it much better
|
||
311 then something you only know slightly. No one can know more then
|
||
312 one or two langauges completly (most don't even know the full extent
|
||
313 of the langauge they are defending). I read the comment about
|
||
314 FORTRAN being such a great number cruncher above, but please keep
|
||
315 in mind that the original version of FORTRAN was no better then
|
||
316 any of the other langauges in that respect. (The original FORTRAN
|
||
317 ran on a 4K machine!)
|
||
318 Pascal was created to teach structured programing, and it does that
|
||
319 very well, but please don't try to confuse or compare that to a
|
||
320 langauge that doesn't because it obviously won't. Basic on the other
|
||
321 hand was created to teach people about computers not about a particular
|
||
322 programing style, and again it does this very well. The reason behind
|
||
323 this is motivation. To program in PASCAL you must have a clear
|
||
324 understanding of what you want to do before you even put down any
|
||
325 code. This is a bit difficult to do if you don't even know what a
|
||
326 computer is let alone what to do with it. With BASIC I can get
|
||
327 people to understand what the computer is doing just by have them
|
||
328 write a quick little program right there at the terminal. It may not
|
||
329 seem like much to most programers, but to be able to tell the computer
|
||
330 to say "hi" and have it do it within a 15 second learning time is
|
||
331 very impressive to someone new to the game.
|
||
332 About writing sloppy code (I.E. non-structured) verses clean code.
|
||
333 If you know what you want to do, Structured is nice, but if you
|
||
334 don't know, then it just gets in the way. There is a two step
|
||
335 process when creating something new (and I mean really new, not a
|
||
336 different way to calculate pi to n decimal places.)
|
||
337 The first step has nothing to do with how it should be implimented
|
||
338 or used, it is simply the creation of the idea into a usable form.
|
||
339 any attempt to strucure or standardize this will get in the way. The
|
||
340 continuous mutability of the whole concept is what allows the
|
||
341 creative idea to be generated to begin with. What we are trying to
|
||
342 come up with here is something new and different, not the best or
|
||
343 cleanest way to do it. The two are incompatible in the thought
|
||
344 process. The problem with the program industry is that it is so
|
||
345 new that the second portion of the equation never has time to
|
||
346 come into effect before the whole idea is replaced with something
|
||
347 else. You must have a stable concept in existance in order for it
|
||
348 to be cleaned up and standardized.
|
||
349 *** ANOTHER LONG AND WINDY COMMENT FROM CISTOP MIKEY *** 21 NOV 82 ***
|
||
350 ***************************************************************
|
||
351 I was considering the sloppiness of microcomputing programming
|
||
352 yesterday. Example: It is silly to use the edit function of
|
||
353 these computer systems to enter messages. You should first
|
||
354 use a text editor to make the message (assuming, of course, it
|
||
355 isn't a spur-of-the-moment thought) and after logging on,
|
||
356 send the message by computer. Fine. You don't waste 10 minutes
|
||
357 of the SINGLE-USER system while everyone else is getting busy-
|
||
358 signals on prime time. Great. Except for one thing. In other
|
||
359 systems, (I don't know about this system, yet, haven't tried)
|
||
360 the system loses characters at the beginning of the line. But
|
||
361 why should it? Suppose it loses 5 characters. At 300 baud,
|
||
362 this is effectively 0.166 seconds of dead time, during which
|
||
363 a reasonable microprocessor can execute 166,000 instructions.
|
||
364 But if only 5 of these instructions were inputting from the
|
||
365 serial port, no characters would be lost! The fault is not
|
||
366 with the hardware at all, but with the idiot who wrote the
|
||
367 software. HE JUST DIDN'T STOP TO CONSIDER THE POSSIBILITY....
|
||
368 What about those Apple BBS's that don't support lower case,
|
||
369 control-s and control-q, control-c, etc. Same problem. The
|
||
370 person who wrote it just DIDN'T THINK ......
|
||
371 Until people learn to program their hardware to its fullest
|
||
372 extent, it will be wasted.
|
||
373 ********************************************************
|
||
374 I think you have a point.
|
||
375 The thing that I have noticed is that each
|
||
376 Micro computer Programmer has to spend a lot
|
||
377 of time reinventing the wheel. After the very beginning
|
||
378 basic stuff on learning the language you're using,
|
||
379 there's not much in the way of texts that really teach
|
||
380 you the ins-and-outs of your computer.
|
||
381 For instance: Atari's Player/Missile graphics are
|
||
382 well known, but nowhere have I seen a well organized
|
||
383 chart or tutorial on how to set them up!
|
||
384 The poor programmer has to depend on magazine articles,
|
||
385 $50@hr classes (if he can find them), or expensive software tutorials.
|
||
386 Or manuals that are cryptic to the point of incomprhensibility!
|
||
387 The situation seems to be the same for all the other
|
||
388 micros. Anything beyond the basics is almost non-existant.
|
||
389 It would seem to me that there would be a good market
|
||
390 for subroutines that could be adapted to many different
|
||
391 programs (and well documented!!!) to reduce the reinvention
|
||
392 of the wheel presently necessary.
|
||
393 <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
|
||
394 Yes, the results are often not as good as could be desired, but why
|
||
395 spend the time and effort to make it "better" if it works? The lost
|
||
396 charaters at the beginning of the line may be fatal to you, with your
|
||
397 "better" way of doing things, but to most of us, who cares? Use the
|
||
398 machine the way it was designed, in this case direct entry.
|
||
399 There are other possible reasons for imperfect code: price, space in
|
||
400 memory, and some of the flaws are called 'features'. Anything can be
|
||
401 made better, but to make it work in the first place is the real work.
|
||
402 Unfortunately it is true that the teaching language is the one you will
|
||
403 probably continue with, but to say this is good implies a lack of
|
||
404 understanding of the programming process, versus learning to program.
|
||
405 Have you heard of the advantages of assembly language? One of them
|
||
406 is it's totally unstructured nature. The assets of FORTRAN, such as
|
||
407 arcsin, are almost totally duplicated in BASIC, if they seemed to be
|
||
408 needed (arcsin wasn't). Don't confuse FORTRAN's advantages with those
|
||
409 of a compiler, either. There are BASICS that will do anything that
|
||
410 FORTRAN will, and even a few BASICS that will run on small micro.
|
||
411 That 4k quoted for the original FORTRAN wasn't bytes, either. (I
|
||
412 also suspect hard disc.) In any case why kill yourself for super
|
||
413 fancy code when quick and dirty works? The program worth maintaining
|
||
414 is pretty rare, especially when BASIC allows a new one to be written
|
||
415 in less time than the old one could be converted to do what you want now.
|
||
416 ................................................B.A.D................
|
||
417 The dropped charaters at the beginning of the line are not simple to
|
||
418 eliminate, because the are usually caused by the machine doing something
|
||
419 out of reach of the programmer. The Apple BBS's may be running BASIC, and
|
||
420 the workings of this are not under control of the porgrammer because he
|
||
421 used BASIC to avoid the unimportant (to his use) details, and the huge
|
||
422 investment in time and effort needed to duplicate the things BASIC does.
|
||
423 On this system, I suspect it is because the processor is busy with a time
|
||
424 dependent job: running the disc drive. There is always a better way, if you
|
||
425 are willing to add that additional cost.
|
||
426 By the way, Mike, what did this thing cost? Would a few extra $100 dollars
|
||
427 in cost have any effect on it's existance?
|
||
428 Anyone planning multiprogramming on a micro should look into the cost
|
||
429 of running another processor versus the cost in time. At less than $5 for
|
||
430 most 8 bit processors?? An operating system capable of alowwing real
|
||
431 multiprocessing is bigger than most micros will allow. Special purpose
|
||
432 jobs, that run a few more or less parallel processes, yes,, but a micro
|
||
433 is just to slow to run more. Except maybe keyboard input with a spooler
|
||
434 to the printer. The slow jobs like printing have their advantages, too;
|
||
435 just like the commercial on TV, it's time to go pee and have a beer.
|
||
436 .....................................BAD, again 11-22-82/ 0220 am.........
|
||
437 Let's hear it for the best, most efficient code known: self modifying.
|
||
438 It's also probably the most used code in the world, because the ESS in
|
||
439 most every city in the US uses it, the same 10 or so instructions repeated
|
||
440 over and over again, except it modifies itself every 5 ms or so. This was
|
||
441 a nightmare to get running in the first place, but it works! It doesn't
|
||
442 need maintaining. Good code doesn't need to be understood by anything but
|
||
443 the machine on which it runs. The best computers in the world are totally
|
||
444 incomprehensible, self modifying gadgets. (If you doubt this, tell me how
|
||
445 your brain works.)
|
||
446 ##############################################################################
|
||
447 If that's the case, then the Atari's really great --
|
||
448 It can (in BASIC) modify its own code and then
|
||
449 continue running it. The Terminal program that
|
||
450 I am using does exactly that! -- In this case
|
||
451 it just deletes a bunch of Data statements so
|
||
452 that there is more room for Upload/Download.
|
||
453 But about reinventing the wheel: Almost all micros offer
|
||
454 redefinable character sets, but how many of these
|
||
455 redefined sets (software) do you see kicking around?
|
||
456 If you want Script (for instance) where are you going
|
||
457 to get it besides doing it yourself?
|
||
458 /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
|
||
459 I have a request for the story of this system, so here goes...
|
||
460 BWMS was put together initially over a weekend (accually a friday night
|
||
461 and saturday) The total cost was $0.00 (el zipo) The entire system was
|
||
462 put together from junk box parts. The software is from a text editor
|
||
463 used for store and forward communications. (Putting data on a disk for
|
||
464 latter transmission to a computer.) It was designed for PNB in fact for
|
||
465 transmittal of service records to thier computers at the end of the day.
|
||
466 The disk drive was a dud that was resurected from the junk heap. It had
|
||
467 some worn out brushes which I modified the motor to allow them to run a
|
||
468 bit more (they are still in there!) The second drive came later also from
|
||
469 the junk heap, it had a seized motor which I took apart and cleaned up.
|
||
470 The CPU is an obsolete board that was thrown away and I pressed it into
|
||
471 service. The modem is one of the prototype PCS modems that wasn't much
|
||
472 good for anything else (it won't work accousticlly). The case for the modem
|
||
473 is a cardboard box. The auto answer consists of a capactitor that is charged
|
||
474 by the telephone ring signal and then maintained by the received carrier.
|
||
475 (That is why you have to hangup to get BWMS to hangup.) The case for BWMS
|
||
476 itself was also from the scrap heap, it was a prototype case for anouther
|
||
477 store and forward device. Only got the chassis, not the cover. The total
|
||
478 time spent on BWMS (not counting times like now, which is entertainment
|
||
479 to me, and therefor of its own value) is about 5 days. I have had to
|
||
480 repair the system 3 times. since it was created 2 years ago. The first
|
||
481 time was to replace a known defective regulator (I was waiting for a good
|
||
482 one to show up in the junk box) The second time was when I blew out the
|
||
483 RS232 drivers by accidentally dumping 120volts AC into them (my terminal was
|
||
484 at the other end of the house which has a floating ground which I now
|
||
485 know about the hard way). The final repair was after the OMSI computer fair
|
||
486 I had to oil the disk drive bearings because they were getting very noisy.
|
||
487 Even the phone line does not cost really, since I use it for myself when
|
||
488 I need it (thats why BWMS is busy sometimes.) BWMS just uses it when I'm not
|
||
489 The only cost that is truly used by BWMS is the electricity, which at 30watts
|
||
490 isn't exactly a stagering amount. Thats about $2.00 a month or $24.00 a year.
|
||
491 I feel that I get far more then that in entertainment value out of it.
|
||
492 As you can see, cost is an extreme importance to BWMS. If it costs anything
|
||
493 I don't do it, it has to be free.
|
||
494 As to why BWMS drops chars at the begining of the line. The CPU used in BWMS
|
||
495 is a very low cost aproach, that means that EVERYTHING is handled by the
|
||
496 CPU, even disk accesses. The disk service time is extremly tight, and in
|
||
497 fact there is absolutly no time available for the CPU to do anything else
|
||
498 but service the disk. The trade off here is that a DMA controler isn't needed
|
||
499 to do the servicing which saves some bucks.
|
||
500 If you really do want to send data to BWMS via computer you can do it by
|
||
501 waiting for about a second after sending a line to BWMS. The first
|
||
502 line may require upto 2 second delay if you are not at the bottom of the
|
||
503 disk before you ask for the enter. Anouther way is to wait for each character
|
||
504 you send to be echoed back by the system befor continuing.
|
||
505 When in command mode wait for the '>' prompt. Then give the command.
|
||
506 Another note is that While CBBS also drops the first few chars (it is much
|
||
507 better now that it has a Semidisk (TM) ) The software was written with
|
||
508 computer upload in mind. In case you haven't noticed, it always sends a
|
||
509 control G (bell) When it is ready for a new line of data. Yes, the programers
|
||
510 do think when they write programs, it is just that there is more to a
|
||
511 computer then software, and until you have spent a couple of years dealing
|
||
512 with real time communications you don't know what a mess it really is.
|
||
513 It is not a cut and dry process, but rather a lengthy series of compromisses.
|
||
514 ****** The great and all powerless CISTOP MIKEY *** 22 NOV 82 ***********
|
||
515 P.S. Even the disks I use on BWMS are rejects, they are disks that won't format
|
||
516 on the back side, so I can't use them on my double side drives that I use in
|
||
517 my real computer.
|
||
518 ***************************************************************************
|
||
519 )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
|
||
520 Actually, some cute programming would allow no lost characters even
|
||
521 during disk access. An actual sector transfer can occur in about 10
|
||
522 milliseconds, assuming just the transfer. This is only one-third of
|
||
523 a character at 300 baud. So just check the serial input just before
|
||
524 and after any disk sector transfer, and voila', no lost characters.
|
||
525 (keep a queue for later input to the actual bbs software).
|
||
526 Notice that this requires no DMA, interrupts, or anything else
|
||
527 special: just programming. Even the cheapest computer could do it.
|
||
528 (And from the description above, this system would be close to
|
||
529 the "cheapest").
|
||
530 Anyway, I just wanted to point out that hardware limitations
|
||
531 aren't limiting in every case.
|
||
532
|
||
533 Continuing, it seems that many languages are hiding behind
|
||
534 the excuse of "Every language is best for certain uses." That may
|
||
535 be true, but so is a nutcracker best for cracking nuts, but not
|
||
536 much else. Question: Is there anyone out there that prefers Basic
|
||
537 who learned it after, say, learning more than one other language.
|
||
538 (example: PLI, APL, PASCAL, LISP, FORTRAN, ALGOL, etc) It seems
|
||
539 to me this would be highly unusual. People who like basic tend
|
||
540 to have learned it first, and thus don't miss nearly all of the
|
||
541 features it lacks but the other languages include. If you've
|
||
542 never heard of a 'local variable' you program around this lack.
|
||
543 You don't miss what you've never had.
|
||
544 If you must learn basic, learn it after a couple other languages,
|
||
545 at least so you know there are alternatives.
|
||
546
|
||
547 ****************************************************
|
||
548 A HAMMER WORKS GREAT FOR CRACKING NUTS TOO, AS WELL AS FINGERS.
|
||
549 YOU WILL SELDOM FIND A GOOD MECHANIC USING A CRESENT WRENCH TO
|
||
550 DO A JOB, YET IT IS A VERY VERSITAL TOOL, IT CAN BE ADJUSTED TO
|
||
551 FIT ANY NUT, BUT THIS VERSITILITY IS EXACTLY WHAT THE PROBLEM IS.
|
||
552 THE WRENCH MUST BE ADJUSTED TO EACH JOB, AND THEN IT IS ONLY FAIR
|
||
553 AT PERFORMING THAT JOB, WHILE THE BOX WRENCH OR OPEN END OR RATCHET
|
||
554 CAN DO THE JOB EXACTLY THE WAY THE MECHANIC WANTS, SO HE CARRIES A
|
||
555 FULL LINE OF TOOLS TO DO THE JOBS INSTEAD OF A FEW 'ALL PURPOSE TOOLS'.
|
||
556 ******************************************************
|
||
557 In regard to the disk access time. I can tell you have never written
|
||
558 any cheap disk software, because it ain't that easy. The actual
|
||
559 time to do the sector write is 11.111...ect. milliseconds. 200ms
|
||
560 divided by 18 (sectors per track). However, this is only a small
|
||
561 portion of the problem. The cheap disk interface uses a 1771 disk
|
||
562 controler (they don't come any cheaper). One of the aspects of the
|
||
563 1771 is that to write a sector you tell it that you want to write
|
||
564 one, and then immediatly try to start writting it observing the
|
||
565 write status in the 1771. Sometime later the 1771 will tell you
|
||
566 that it is done. This can occur anywhere from the 11ms time stated
|
||
567 to 200ms later. This is because the 1771 is searching for the
|
||
568 sector to write to, but the computer doesn't know when it will find
|
||
569 it so it has to be instantly ready to transfer the data when the time
|
||
570 comes. Since the status loop needed to do this disallows doing anything
|
||
571 else we are stuck in the loop for as long as 200ms (possibly longer
|
||
572 if it gets an error on the first pass.)
|
||
573 The problem was solved in the later equipment by changing the hardware
|
||
574 to do the status checking via interrupts. This gave us about 10micro
|
||
575 seconds out of every 64microseconds to play with so that we could do
|
||
576 the que thing as you mentioned above. Please note that the hardware
|
||
577 had to be modified to do this! Also it caused some rather extensive
|
||
578 software to be writtten to support all this. A version of the device
|
||
579 was accualy created that could communicate at 19200 baud while receiving
|
||
580 to disk, but it required a programer who was an expert in the field
|
||
581 over 6 man months to impliment it and the ques ate up enourmous amounts
|
||
582 of memory.
|
||
583 It is nice to say that anything can be done, but realistically, there are
|
||
584 limitations. They may be hardware, they may be cost, or they may be time,
|
||
585 but they are there just the same. If the time and money warent it they can
|
||
586 many times be overcome, but the desision must be first made that it is
|
||
587 worth it.
|
||
588 They ain't worms in that there can, they's VIPER'S!!!!!
|
||
589 As for languages, I started with Fortran (actually machine langauge but
|
||
590 that is not really a high level langauge.). I moved to Basic because I
|
||
591 found Fortran to be horibally lacking in decent string handling. I also
|
||
592 found the real world interface to be wierd at best. As far as doing
|
||
593 actual computation it is OK, but there is more to computers then just
|
||
594 computing!
|
||
595 I also have a copy of JRT Pascal, It is amazing how much nicer a language
|
||
596 can get once it recognizes that there is something else out there besides
|
||
597 the computer. I still am not in love with something that tells me how to
|
||
598 wrtie code, but at least JRT is passibly usable.
|
||
599 USCD Pascal is another mater .. Bleahhhhhh !!!!!!!!!
|
||
600 As for 'local vars', SO? I don't find them that hard to do with out
|
||
601 for the things I do. They are a nice touch yes, but SO? By the way ther
|
||
602 are a couple of Basic's out there that even support 'local vars'.
|
||
603 ******* The first and last CISTOP MIKEY **** 23 NOV 82 ************
|
||
604 wHAT Hte fu)6 HAPpEN TO drIve a ?? ? ss UHlk;scbjr:
|
||
605 HaLO SpACE cAdeTS !!! MY hatS Off to Yuou and EAchg o f
|
||
606 u. Ach spine deh ...............................................
|
||
607 ................excuse me this the curator of the Franklin
|
||
608 insane asylum. One of my patients got a hold of our computer.
|
||
609 excuse us for any harm we may have caused. Ted P. Skimmer.
|
||
610 =============================================
|
||
611 Here's another programer who came to BASIC after other languages.
|
||
612 I started with FORTRAN, then COBOL, then SAAL, and assembly (Univac,
|
||
613 not 8080). I will take BASIC over any of the above, for the simple
|
||
614 things it will do. For time dependent things I would use something
|
||
615 that is compiled, or if necessary, assembly. The teaching languages
|
||
616 are not for real programming: even N. Wirth, who invented Pascal,
|
||
617 reccommends a different language called Modula II for real programming.
|
||
618 It often makes sense to have more than 1 version of a language, for
|
||
619 instance BASIC as both an interpreter and a compiler. I have several
|
||
620 versions of BASIC, and several Pascals, for instance. Each has it's
|
||
621 advantages, as well as problems. If I had time and energy enough I
|
||
622 would write an extended BASIC that would do everything; but then
|
||
623 noone else could use it (totally non-compatible and absolutely
|
||
624 incomprehensible) It would have to have relocateable code, local
|
||
625 variables, every imaginable function, calls by name, line number,
|
||
626 implication; a full screen editor;automatic variable lists, a spelling
|
||
627 corrector.it would run as a full compiler, but would compile as text was
|
||
628 entered, so it could run like an interpreter. Etc, etc.
|
||
629 A minor problem: how big would it be?? 20 or 30 Megawords???....B.A.D....
|
||
|