DOS Coders1 Message Board ,----------------------------------------------------------------------------- | | Arachne DOS Coders1 Message Board | | | | | | | | [ For the Operational discussions of the Arachne C Coders ] | | | | ------------------------------------------------------------+-------+---+ | | | ============================================================================ | | Sat, Apr 03, 2004 - 1:17:45 am | | gregy> | new board.... | | ============================================================================ | | Sat, Apr 03, 2004 - 1:35:16 am | | gregy> | Old messages are archived in the "blue" 40402adv.txt file, below.. | ... | | | ============================================================================ | | Sat, Apr 03, 2004 - 1:36:42 am | | gregy> | Last two messages on the old file were: | | | | | ============================================================================ | | | | Thu, Apr 01, 2004 - 5:35:58 pm | | | | ray> | | Interesting how we go from doing all our buisiness here, to doing | | it all on Hehaw, then back again. | | | | So no comment on my function renaming scheme. The question now is: | | does silence confer consent? | | | | | ============================================================================ | | | | Fri, Apr 02, 2004 - 12:54:38 am | | | | Joe> | | OK, Ray, | | | | You have spurred a response about the renaming ... although in my | | haste :-(in a rush, ATM, busy) I initially responded to the wrong | | thread. Arghh! | | | | | ============================================================================ | | | | | ============================================================================ | | Sat, Apr 03, 2004 - 1:41:24 am | | gregy> | gentlemen....continue on from there.... | | | ============================================================================ | | Sat, Apr 03, 2004 - 9:43:21 am | | ray> | Gregy, | | I like the new font. | | | ============================================================================ | | Sat, Apr 03, 2004 - 1:06:23 pm | | gregy> | hmmm....Ray...this should be the same font as the last one....???... | ..unless...unless...unless....hmmm...lessee here, now....maybe I got | a new version from glennmcc, or sumpin........hey....what do | I know....I'm only the unpaid help around here...... | ... | he he he | | | | ============================================================================ | | Sat, Apr 03, 2004 - 2:13:42 pm | | ray> | Good work anyway Sarge. | | But what about those translations? ... You never answer my questions | about that. | | | ============================================================================ | | Sun, Apr 04, 2004 - 10:01:40 am | | gregy> | Of course...!!!..........meaning there's not "significant" | progress, yet...I'm waiting on a new monitor (due Tue) since this | 15" is going out...and makes it hard for my eyes to see what's going | on.....and my other spare 15"ers are all 60 miles away up at the farm, | so....I'll wait for the new 17"er and go with that.... | ... | | | ============================================================================ | | Sun, Apr 04, 2004 - 10:53:22 am | | ray> | OK, | | I'm going to do the function rename thing, like we discussed on | Yahoo, and if my computer doesn't blow up, and if there are no | problems (who am I tying to kid ...) I should be ready to help | you in the next few days, since there isn't much left for me to do | except work on the file structure, and that will require much more | insight into the whole show than I have now. | | Farmer eh? | | | | ============================================================================ | | Sun, Apr 04, 2004 - 5:20:41 pm | | ray> | 281 functions renamed, no change in .exe :-) | | | ============================================================================ | | Tue, Apr 06, 2004 - 9:09:25 am | | glennmcc> | No change in .exe ? | | So, it is identical (byte for byte), | to the .exe you D/Led from me last Nov ? | | Just kidding. ;-) | | Really Ray, | I _do_ hope that your changes are going to make it easier for | others to understand and work with the code. | | It's just not 'my style'... that's all. | | But then again... isn't that why we had hoped to get Arachne as GPL ? | | I mean... to get different 'styles' of programmers involved ? | | So, your style is not my style........ BIG DEAL ;-) | | Go for it Ray. :) | | | ============================================================================ | | Fri, Apr 09, 2004 - 11:24:36 am | | ray> | heh .... | | For fun and profit, I just made a version of the code with | *all* the comments and nonfunctional code stripped out. Any guesses | as to the effect on compile time? | | | | ============================================================================ | | Fri, Apr 09, 2004 - 4:22:25 pm | | whocares> | ????????? | | ============================================================================ | | Sat, Apr 10, 2004 - 12:28:45 am | | mht> | The stripped down sources may be considerably shorter, so the compiler | spends proportionally less time on reading them. But the time needed | to skip comments should be much shorter than the time needed to generate | object code from the remaining lines. Linking time should not be | improved in any way. So, my guess would be: | | (old_time - new_time) /old_time < k * (old_size - new_size) /old_size | | where the factor k is, say, 1/3 or less, and may greatly depend on | compiler's internals. Anyway, WHO CARES? Even if we remove some | non-functional code, we should certainly add as many new comments | as possible, not remove the precious existing ones. | | BTW, happy Easter to everyone! | | | ============================================================================ | | Sun, Apr 11, 2004 - 11:02:07 am | | ray> | Michal, | | You have the right idea, but the value of 'k' is even less than | you suspect -- the difference in build time was almost nothing! | | Anyway I was not suggesting that the decision to make code cuts, or | to add new comments would be effected by this!! As you say we | need as much commenting as possible for sure. It was just as a | curiosity that I asked the question. The stripped code has only one | use and that is to help make the map of functions -- I needed to | strip all the comments so that my function searching algorithms would | not find functions mentioned inside comments, that's all it is for! | | Happy Easter to you too. | | | | ============================================================================ | | Sun, Apr 11, 2004 - 2:19:13 pm | | glennmcc> | Happy Easter to one and all. :) | | ============================================================================ | | Mon, Apr 12, 2004 - 12:58:56 pm | | ray> | BASE3 ready to go. | | Anyone want an upload? | | | ============================================================================ | | Tue, Apr 13, 2004 - 12:53:15 am | | mht> | What are (roughly) the changes from BASE2? | | | | ============================================================================ | | Tue, Apr 13, 2004 - 3:21:33 pm | | ray> | Michal, | | -More tidying up of formating errors, esp. line wraps and outdents. | -More 'for' loops. | -Renamed functions like we discussed. | -A few more trivial function moves. | -Some 'useless' code commented out. | -An effort at tidier variable decarations. | -First tries at project wide function maps. | | That's about the size of it. | The next thing I want to work on is a serious look at the | overall structure, so I thought I should release an edition before | I started, since the structural changes might not be acceptable, or | might need several tries to get it right. | | | ============================================================================ | | Thu, Apr 15, 2004 - 4:33:54 pm | | ray> | We sure went quiet all of a sudden, where is everyone? | | | ============================================================================ | | Fri, Apr 16, 2004 - 9:00:11 am | | mht> | Everyone is busy, waiting for weekend, I guess ;-) | | Is BASE3 already available for download? | | | | ============================================================================ | | Fri, Apr 16, 2004 - 1:53:09 pm | | ray> | M, | | Yes B3 is ready. If I hear from Joe or Gregy I'll send it to them for | upload, if not, I can send it to you directly if you want. | | | | ============================================================================ | | Mon, Apr 19, 2004 - 1:18:42 am | | Joe> | Hi Ray, | | Yep, been very busy mutitasking, ATM. | | Would you like to try uploading B3 using Lynx386? (hint, hint;-) | If not, send it my way and I'll try to fit it in ... | | ============================================================================ | | Mon, Apr 19, 2004 - 1:19:36 am | | Joe> | Ahem ... that should have read as 'multitasking', of course. :-/ | | | ============================================================================ | | Mon, Apr 19, 2004 - 3:43:49 pm | | ray> | Joe, | Joe, | | Well, it's time I was a big boy and did this myself, so I'll give | it a go with your latest. I need a break from what I'm doing anyway -- | trying to get the 'big picture' of the file structure. The headers are | the biggest source of insite, since they seem to have (at one time | anyway) been well layed out. Someone also took the time to | try to group bunches of forward dec's into logical types -- It dosen't | look like MP's work, deffinitely not Haro, I'm guessing either | Bernie or Glenn ... yeah, it's meticulous so it looks like Glenn's | work. Any chance of that list of protected functions ?? | | | | ============================================================================ | | Mon, Apr 19, 2004 - 5:18:19 pm | | glennmcc> | I'm not sure what you mean by "forward dec's" | | Got an example ? | | | | ============================================================================ | | Mon, Apr 19, 2004 - 9:37:42 pm | | ray> | Glenn, | | Sorry ... forward delarations -- come to think of it 'function | prototype' would be more accurate. | | | | | ============================================================================ | | Tue, Apr 20, 2004 - 8:50:42 am | | glennmcc> | Example ? | | ============================================================================ | | Tue, Apr 20, 2004 - 1:46:01 pm | | ray> | Glenn, | | Here is a good example of nicely organized prototypes: | | ARACHNE.H (B3): | | ******************************************************* | | //prototypes: ======================================= | | //config | char *ConfigVariable(struct ib_editor *File, char *keystring, | char *newvalue); | extern char watfname[80]; | | //initialization of TCP/IP according to ARACHNE.CFG | void ArachneTCPIP(void); | | //initialization of dialer according to ARACHNE.CFG | char *ArachneDial(void); | int PPPlog(void); | | //global idle function for WATTCP | int TcpIdleFunc(void); | | //HTML, graphics, MIME, DGI | void HTTPcharset(char *charset); | void Try2ReadHTMLcolor(char *string, unsigned char *r, | unsigned char *g, unsigned char *b); | int Try2GetNum(char *str, unsigned proczaklad); | | //HTML redraww dunctions... | void RedrawHTML(char nomsg, char virt); | void DrawActiveFrame(void); | | ******************************************************* | | Unfortunately, the headers were not very well maintained; there were | lots of duplicate and uneeded prototypes, and it is obvious that | many functions had been moved around without updating the headers -- still, | there is some attempt at orgainization. | | | ============================================================================ | | Tue, Apr 20, 2004 - 5:10:16 pm | | glennmcc> | OK, I see what you're talking about now. | | That is the work of either Michael or Bernie. | | | ============================================================================ | | Tue, Apr 20, 2004 - 8:06:52 pm | | ray> | Gotta be Bernie ... not that it matters, but by now I'm getting a | very clear idea who did what. What's nice is that sorting out | the headers has a noticable effect of the size of the .exe -- I'm | running with 163[+] right now, and that's before including Joe's | improvements. | | ============================================================================ | | Wed, Apr 21, 2004 - 8:03:25 pm | | ray> | Joe, | | Sorry to bug you with this, but which of the three lynx versions | on your site is the one you recomend? | | | ============================================================================ | | Wed, Apr 21, 2004 - 8:56:51 pm | | ray> | Not to count my winnings until I've left the casino, but it's been | several days now since I've had an attack of the IE editor stray | bytes bug. Can't help but wondering if I've reduced the size of | core.exe below some magic number; or maybe I commented out some | supposedly useless string that was infact causing trouble .... who | knows. | | | ============================================================================ | | Thu, Apr 22, 2004 - 2:08:47 am | | Joe> | Ray, | | Generally, the latest version of Lynx should be best (ie. 2.8.5rel.1), | although this rule doesn't always apply, right? | | About the IE stray bytes, didn't you say you deleted some duplicate | function (routine?) prototypes? Were there any inconsistencies with | any of these duplicates? If there were, this would explain errant | behaviour. If not, then the bug is merely in hiding. | | ============================================================================ | | Thu, Apr 22, 2004 - 12:01:11 pm | | glennmcc> | That SOB is quite unpredictable. | | I have not had it in over a week now. | | But last week the sucker was running full-force and was screwing up | every message I tried to compose/edit/replyto | | Before that, it had been almost a month with no stray characters. | | ============================================================================ | | Thu, Apr 22, 2004 - 4:58:30 pm | | ray> | Joe, Glenn, | | Yeah, I deleted/am deleting dozens of prototypes, including at least | a dozen duplicates, but I take a rather brutal aproach to | prototypes -- komment, kompile, kill! -- in other words, if she builds | with the prototype commented, I kill it now and ask questions latter | ... but I never even thought about a close scrutiny of these | things :-( so I can't answer your question <:-( IMHO, any and all | duplicated code is just trouble waiting to happen. | | Anyway I know I'm tempting fate even mentioning that the bug hasn't | shown up for a few days -- not out of the woods yet by any means. | BTW, have you guys noticed that when the bug shows, the stray | characters (almost?) always end with an '!' ... I wonder why? | | | | ============================================================================ | | Thu, Apr 22, 2004 - 6:17:49 pm | | glennmcc> | You knew I was going to say this, so I won't disappoint you. ;-) | | Mine almost never end in '!' | | If-fact... thay almost never contain an '!' at any point within them. | | | ============================================================================ | | Thu, Apr 22, 2004 - 6:20:59 pm | | glennmcc> | The toughest thing with this one is the fact that is not duplicatable. | | There is no set of steps which can be followed to 'force' it to happen. | | If we could do that...... we could find it quite easily. | | Since we can't...... we can't seem to find it at-all. :( | | ============================================================================ | | Thu, Apr 22, 2004 - 6:48:34 pm | | Joe> | Just a thought ... does this happen with the Linux version too? | | | ============================================================================ | | Thu, Apr 22, 2004 - 7:02:51 pm | | ray> | Yes, it is the most intractable sort of thing -- so hard to find | any sort of pattern at all -- anything that might provide a starting | point; then there's Bastiaan, who has *never* had the problem | at all. Go figure. But if Sherlock were here, I'm sure he'd say | that the very absence of a clue is a clue itself, but how to | read it ... | | | ============================================================================ | | Thu, Apr 22, 2004 - 8:36:13 pm | | glennmcc> | re:".......that the very absence of a clue is a clue itself,..." | | Therefore..... | | Nothing is not nothing, it is actually something ??? | | Empty is not empty, it is actually partially full ??? | | Zero is not zero, it is actually greater than zero ??? | | All of the above are BULLSHIT ! | | Zero is zero, empty is empty, nothing is nothing and | the absence of a clue means absolutely nothing at-all. | | ============================================================================ | | Thu, Apr 22, 2004 - 8:39:48 pm | | glennmcc> | Joe, | | I can't say for sure but....... | | Since we _do_ know that this isa 'mamory leak' problem. And since Linux | handles memory | in a totally different manner than does DOS .... | | I would venture to guess that the Linux version will not exhibit such a | problem. | | | ============================================================================ | | Thu, Apr 22, 2004 - 8:40:44 pm | | glennmcc> | Boy, now that was a fruadian slip if I ever saw one. | | ============================================================================ | | Thu, Apr 22, 2004 - 9:13:54 pm | | ray> | Glenn, | | I generaly avoid arguing a point with someone who's emotional | about a subject, but you're logic is quite flawed and your examples | are all irrelevant. There are many situations when the *absence* | of a preceptible pattern in a field of data being analysed is a | very strong clue as to what might be generating that data since it | makes it possible to eliminate as canditates those potential | causes which *must* generate known patterns. In the world of computers, | virtualy everying is deterministic, and our bug will be, too. When we | find it, there will be a pattern. | | | | ============================================================================ | | Fri, Apr 23, 2004 - 1:41:21 am | | Joe> | Well, I have heard this problem described as a "memory leakage" | problem too, however I have seen no evidence to support this | precise classification. Nor does Linux work via magic; I'm sure | memory leakage is just as easy to achieve there as DOS, although | garbage collection is probably more common in Linux compilers, so | such a problem might be "masked" in Linux. This is just speculation | on my part, however I'm still to be convinced on the classification | of this bug anyway. | | Ray is right. What we have here is indeed a clue, albeit a poor | quality one. Behaviour of the Linux browser would be a further clue. | | | ============================================================================ | | Fri, Apr 23, 2004 - 1:26:59 pm | | ray> | Joe, | | Now that is an excelent point -- we have all tended to just assume | that we're looking at a memory leak here, but is it? It seems to | me that a memory leak of the normal kind would tend to behave | in a consistent and rather omnipresent way. But we have a bug that | (as Glenn said) can go away for a month and then return with a | vengance, while leaving some people completely untouched. No, it's | gotta be some sort of interaction thing. What might one change in | one's computer configuration or Arachne configuration that would | tend to toggle a bug on and off. Something unlikely to arouse | suspision, something seemingly trivial .... | | | ============================================================================ | | Fri, Apr 23, 2004 - 4:43:41 pm | | glennmcc> | Well Ray.... I also will not argue that point any further. :) | | As to whether or not it is a 'memory leak'..... | | I tend to think that it _is_ for one simple reason. | | While in the internal editor... almost everything we are doing is being | done by moving those characters around in memory. | | We are only working with the disk at 2 times. | | 1) when we read date in from the disk via the F3 key. | 2) when we write the data to disk via F2 | | All other operations are done 100% in memory. | | Those garbage characters that appear were not read-in from disk... they | got placed on our screens from some other section of memory which we did | not intentionally access. | | Hence... they 'leaked' into the section of memory we _did_ intentionally | access from some section that we _did not_ . | | Or do you feel that I am completely off-base with that evaluation ? | | ============================================================================ | | Fri, Apr 23, 2004 - 8:29:21 pm | | ray> | Glenn, | | ... Well, as you describe it, I'd say you have to be right. And that | forces another good question: what do we mean by 'memory leak'? | I figure that Joe and I are using the term more tightly than you are, | and it will be good to nail that down. When I say memory leak, I | mean something more sinister that just a dangling pointer, or an | overflowed buffer or a crossed pointer, or any of those other | programing errors that are all, technicaly, memory errors. I mean | something like a ... | | HEY! it can't (or can it) be a malloc() error | because that would give us a MALLOC (my old friend) call, wouldn't it ? | | ... anyway I'd like to hear what Joe and Michal -- where is Michal?? | -- have to say about this. By elucidating the different kinds of | errors we might be dealing with, maybe we can find a scent to | follow. | | This is good; in philosophy, it has often bee said that | 80% of the work of solving a problem is done once you've gotten your | terminology straight ;-) | | | | | | ============================================================================ | | Fri, Apr 23, 2004 - 8:34:18 pm | | ray> | ... and here's another thing that might possibly be interesting: | With this core, even after booting and doing everything exactly the | same way, sometimes I get '162[+]' and sometimes I get '163[+]' -- | a very small thing, by why should Arachne give different values | at different times? I'm just barking up the same tree that the | root of this bug is some sort of OS level problem. | | | ============================================================================ | | Sat, Apr 24, 2004 - 12:31:48 pm | | mht> | A malloc() error (i.e., not enough free memory) would result in calling | the famous MALLOCERR macro if and only if the call to malloc is followed | by a check for null pointer being returned and an explicit conditional | call to MALLOCERR. This is very common throughout the code, but are we | sure that all malloc's are 'wrapped' in this way? | | The reason of this problem... well... I'd say that a even a simple | dangling pointer can cause this. I think that Glenn's analysis is right: | something is modifying the area of memory that it shouldn't be. | | Just to add another pseudo-clue: since the time I installed 1.73J4 core, | I got the stray bytes only once, and I'm almost sure that they weren't | 'mine', because I was replying to one of Ray's messages ;-) | | | ============================================================================ | | Sat, Apr 24, 2004 - 4:46:49 pm | | glennmcc> | And since Ray _always_ gets those stray characters..... | | I'll bet they _were_ his. | | | ============================================================================ | | Sat, Apr 24, 2004 - 6:09:07 pm | | ray> | Yup, probably mine if they were 5 charachers long and ended in an "!". | Anyway, what Michal says backs up one of my theories -- if the J4 core | cured the stray bytes probem 'acidentaly', and if my recent cores | have done the same thing (fixed it acidentaly), then what do Joe's and | my cores have in common? ... both free up more memory, so that | seems to indicate not an 'internal' Arachne problem so much as an | 'external' one, ie something to do with OS level memory issues -- | just a guess of course. | | | ============================================================================ | | Sat, Apr 24, 2004 - 6:12:10 pm | | ray> | Oh, forgot ... | | Michal, isn't the whole point of the macro to do just as you say? In | other words, if there are ever situations in which MALLOCERR *won't* | return notice of a mallocerr() error, then what good is it? | | ============================================================================ | | Sat, Apr 24, 2004 - 6:45:13 pm | | glennmcc> | Ray, | | You might be right about free memory. | | Such-as possibly an inverse proportion situation. | | lower amount of free memory == great chance of stray characters | | higher amount of free memory == less chance of stray characters | | Now to prove this theory. ;-) | | As for the mallocerr() situation. | | Yes, you are correct. | | But, what Michal was pionting out is that it will only work _if_ it is | being used in the particular section of code in question. | | Since mallocerr() is not used everywhere.... it won't show us the errors | which happen in the sections of code where it is not being used. | | | ============================================================================ | | Sat, Apr 24, 2004 - 6:56:16 pm | | glennmcc> | Here is a prime example of a place where it _could_ be used but Michael | decided it was better not to. ;-) | | --- in parsecss.c --- | | objmap=calloc(1,TAG_LAST); //max 0... TAG_SLASH tags. | if(!objmap) | return 0; //no need to crash, just quietly ignore stylesheet ;-) | | _____________________ | | If instead we did this...... | | ________________ | | objmap=calloc(1,TAG_LAST); //max 0... TAG_SLASH tags. | if(!objmap) | //return 0; //no need to crash, just quietly ignore stylesheet ;-) | MALLOCERR(); | ___________________ | | Now MALLOCERR() comes into play to show us the error. | | ============================================================================ | | Sat, Apr 24, 2004 - 7:06:04 pm | | glennmcc> | Oh yeah... one more thing. | | While it _will_ show us _where_ the error happened..... | | It won't show us _what_ happened that _caused_ the error. | | So... it's a good tool.... but not a great tool. | | ============================================================================ | | Sat, Apr 24, 2004 - 9:30:08 pm | | ray> | Glenn, | | Read you loud and clear. But, for experimental purposes, it seems to | me that there's no reason not to stuff the code with MALLOCERR's till | it bleeds. I'm still too wet behind the ears to do much good with | this, but if I was you guys, I'd start throwing MALLOCERR'S around | like a Shriner at a parade. | | And, here's the sort of outrageous idea that only I would come up with: | Glenn is right that we need a way of testing the 'more free memory = | less stray bytes' hypothisis -- how about I do a series of builds with | more and more of the modules linked staticaly? That's a sure fire | way to reduce free memory, no? -- and see what that does to the | little Gremlin. (Or is that stupid?) | | | | ============================================================================ | | Sat, Apr 24, 2004 - 10:51:09 pm | | glennmcc> | BOTH of those ideas are just crazy enough that they just might work. | | ============================================================================ | | Sun, Apr 25, 2004 - 3:28:00 pm | | mht> | About the 'DOS memory management problem' hypothesis: rather unlikely. | Among other arguments, it occurs on independently coded DOS versions | (MS-DOS and DR/OpenDOS). | | About the 'more free memory, less stray bytes' one: sounds reasonable. | The question would be, whether with more free memory the problem does | not occur at all, or the 'stray bytes' are still written somewhere, but | in most cases just (harmlessly) into some unused memory area? | | | ============================================================================ | | Sun, Apr 25, 2004 - 8:35:11 pm | | ray> | Glenn, | | OK I'll work up to it. | | Michal, | | Sound observations, I'd say, but although it does occur in different | DOS versions, it also does *not* occur in some peoples machines at | all (Bastiaan). I'm figuring that the only reason for that must | be some sort of confguration thing. Also, there's the good old | 4DOS memory error, so maybe Arachne is simply communicating with the | OS incorrectly, or making some assumtion that is correct some times, | but faulty at others. | | | | ============================================================================ | | Sun, Apr 25, 2004 - 8:35:47 pm | | ray> | Hey Gregy, are you out there? | | | ============================================================================ | | Tue, Apr 27, 2004 - 1:39:35 am | | Joe> | 1. Memory leakage is the least harmful type of memory error and is only | fatal/harmful when it consumes all (too much) of the available memory. | OTOH, stray/crossed pointers, etc. are very dangerous. Hence why I | question the "memory leakage" diagnosis. | | 2. I think that how often or whether this bug appears, depends on what | values have been loaded into RAM by the OS or other applications. Try | running something that loads lots of stuff into RAM, so it has non-zero | (?) data in it before running Arachne. I think this helps the bug | manifest itself. | | 3. Failed mallocs and mismatched function prototypes (the later shouldn't | occur without a compilation error, right?) are possible causes of this | memory bug. We don't need a mallocerr in all failed-malloc situations but | we _always_ need to check for malloc failure and deal with this as | appropriate. | | 4. I too have noticed that I sometimes get a slightly different amount | of free memory with Arachne. Not sure of the cause, perhaps environment | space/variable usage by preceding applications? | | ============================================================================ | | Tue, Apr 27, 2004 - 3:57:26 pm | | ray> | Joe, | | We are barking up the same tree on this. | | But there do seem to be situations in which the compiler takes a | rather lax view of prototype checking. For example, I forget the | names of the functions right now, but a while back I mentioned that | some of the prototypes for functions in (I think) hdrawgif.c weren't | acurate as far as unsigned/signed distinctions -- they were | the '256to2' family of functions IIRC -- anyway I can give a | full report on this if you want, but the point is just that | we can't be absolutely reliant on prototype acuracy. | | As to the curious free memory diff -- even when I start Arachne | from a virgin boot, I can still get a +- 1K difference. | | | | ============================================================================ | | Tue, Apr 27, 2004 - 3:59:31 pm | | ray> | BTW, Joe, would you please delete all the stuff in my Dev directory? | I'm going to try to upload B3 latter today so all that old stuff | might as well be gone. | | | ============================================================================ | | Tue, Apr 27, 2004 - 8:40:17 pm | | Joe> | OK, Ray. | | I have archived your Base1 and Base2 stuff in sub-directories, rather | than deleting them (we still have 15M free, so deletions aren't needed | at this time). | | You might like to create a Base3 sub-directory (folder) for your | uploads, else use your main (Ray) directory. Here's where we get | to find out if there are any write-access problems, since I created | the Ray directory in the first place ... but we'll cross that bridge | when we come to it ... | | ============================================================================ | | Tue, Apr 27, 2004 - 9:13:30 pm | | ray> | Joe, | | Yeah, your right there's room so may as well leave the old stuff | there. Anyway I've got Lynx fired up, and I managed to upload | a test file OK, but when I try to upload base3.zip, I get a | "sending HTTPrequest" msg. and then nothing happens for the 10 minutes | or so that I waited (twice). Any thoughts? (Other than that | your package seems to work right out of the box -- as usual :-) | | | | ============================================================================ | | Tue, Apr 27, 2004 - 9:44:31 pm | | ray> | Joe, | | Making progress -- it seems the above msg. is all you get for | a status report even though the file is being uploaded. There was | a nasty "Alert!: Unexpected network read error; connection aborted" | msg. after one sucessful file upload. It seemed to be accepting | the next files, but they haven't shown up. | | ============================================================================ | | Tue, Apr 27, 2004 - 9:56:13 pm | | ray> | ... hmmm, managed to upload two files 'headers.zip' and 'librarys.zip' | but 'C.zip' 'project.zip' and 'text.zip' won't go. | | | ============================================================================ | | Wed, Apr 28, 2004 - 12:45:58 pm | | mht> | Ray, did you try to _download_ 'headers.zip' back? The file I downloaded | contains only a full path 'u:\[path]\headers.zip' and no zipped data | at all. | | | | ============================================================================ | | Wed, Apr 28, 2004 - 1:18:28 pm | | ray> | Michal, | | Now I see what your email was about -- that is very strange, all that | was uploaded was a path! But the librarys.zip seems OK. Maybe Joe | can figure this out. OTOH, I've always had trouble with Yahoo. | | | ============================================================================ | | Wed, Apr 28, 2004 - 3:34:41 pm | | glennmcc> | Now are we seeing why I had been boycotting Yahoo ??? | | And why I now wish that I had continued that boycott ??? | | From everything that I have seen and heard over the years........ | | Yahoo == Pain in the a......... :(( | | ============================================================================ | | Wed, Apr 28, 2004 - 6:25:37 pm | | Joe> | Glenn, | | Now, now! Of the different web portals (and web mail) sites I have | belonged to over the years, Yahoo is the *only* one that hasn't become | totally JS dependent, and has remained mostly DOS compatible! | | I see no reason for _your_ cowardice vis. Yahoo. ;-) | Unlike Ray, who has the same strange difficulties with Yahoo under | Windoze, you haven't had any such difficulties. | | Indeed, since you have stated that you have Lynx 2.8.5rel.1 working, | why don't you try uploading some stuff to your directory at | ArachneDevelopment? (Hint, hint!) | | | ============================================================================ | | Wed, Apr 28, 2004 - 6:29:53 pm | | glennmcc> | Weeeellll........ | | I _must_ admit that it's not really _that_ bad. | | It's just a a pain in the ass...... not a PAIN IN THE ASS!!! | | I'll try your hint. | | ============================================================================ | | Wed, Apr 28, 2004 - 6:31:49 pm | | Joe> | Ray, | | I don't know what the problem is for you, all I can suggest is : | | 1. Try Lynx 2.8.5dev.16 and Lynx4AU2, most of my DOS uploades have | been with this version. | 2. Check your ZIP files before uploading, just in case ... | 3. If others try uploads, we can get a better picture of whether | this problem is particular to you and your ISP ... | | ============================================================================ | | Wed, Apr 28, 2004 - 6:56:45 pm | | glennmcc> | Done......... | | insight.zip is now in my subdir. | | Uploaded with DOS Lynx285f | | | ============================================================================ | | Wed, Apr 28, 2004 - 7:02:54 pm | | ray> | Joe, | | I'm using your latest. You might be right that this all has to | do with my ISP given the otherwise incomprehensible ".f4" problem | I was having before. I'll try again latter. | | BTW, the feedback on my Great Structural Revelation has been less | than overwhelming. What? So obvious as to be not worth mentioning? | So wrong as to be beneath comment? So right as to command the silence | normaly given to Divine relelations?? | | | ============================================================================ | | Wed, Apr 28, 2004 - 7:08:08 pm | | ray> | Michal, | | I know you like mysteries, so here's one: The size of the .exe should | always go up if a module is changed from overlayed to static link, no? | ... But if you change 'htmlread.c' from overlayed to static, the .exe | size *drops* by 80 bytes! With every other module I've tried, the | oposite happens (as I'd expect). Any comments? | | | ============================================================================ | | Wed, Apr 28, 2004 - 8:56:05 pm | | ray> | Nuts, tried again for a hour to upload stuff. This time 'headers.zip' | seems like it uploaded even though Lynx told me there was an error. | So I went to the Empire and did it that way :( -- but it's all there | now. | | | ============================================================================ | | Thu, Apr 29, 2004 - 1:46:54 am | | Joe> | Glenn's upload seems OK. He says he used Lynx 2.8.5f, but I don't know | what the 'f' signifies ... perhaps hex for 16, hence 2.8.5dev.16 ??? | Which as I said, was the version I uploaded most stuff with ... | | ============================================================================ | | Thu, Apr 29, 2004 - 5:39:04 am | | mht> | The code with support for overlays can be larger, because some kinds of | optimizations cannot be performed then -- overlay managers need some | 'canonical' kind of function calls and function entry/exit code. I don't | know the details of the overlay manager used by BC, though (and I never | had to play with overlays in TP, because whenever I encountered memory | size limitations, it was due to data size, not code size). | | | ============================================================================ | | Thu, Apr 29, 2004 - 1:21:55 pm | | ray> | Michal, | | Thanks for that, it makes sense that the overlay manager would have | a certain overhead that could, at times, cost more than it saves. | | | | ============================================================================ | | Thu, Apr 29, 2004 - 4:04:52 pm | | glennmcc> | I 'costs more' only in file size of the EXE stored on disk. | | The 'savings' is in memory requirement. | | Since the module in question is left on disk til needed. | | | ============================================================================ | | Thu, Apr 29, 2004 - 8:59:36 pm | | ray> | Glenn, | | Yes, I was guilty of fuzzy thinking there -- the savings and the cost | are in different places: the former in memory, the latter in the .exe. | But the fact remains that only that one module produces a smaller | .exe when linked staticaly so Michal's main point still holds. | | BTW, looking forward to trying out your new insight. | | | ============================================================================ | | Fri, Apr 30, 2004 - 1:31:58 am | | glennmcc> | So go download it ............... it's on my site. :)) | | | | | ============================================================================ | | Fri, Apr 30, 2004 - 4:41:40 pm | | ray> | Yeah, got it yesterday, just haven't fired it up yet. | | | ============================================================================ | | Fri, Apr 30, 2004 - 6:11:42 pm | | ray> | In putikonsw.c there is a function 'FreeInkons()' (capitalized by me | for base3 but I didn't change the spelling) ... I'd say this should | be: 'FreeIkons' .... what say ye? | | | ============================================================================ | | Sat, May 01, 2004 - 6:22:50 am | | mht> | This function frees the list of icons (explained in the Czech comment, as | far as I understand it) and I can see no reason for the extra 'n' in its | name other than a mistake (possibly made while renaming it by | search-and-replace). | | | | ============================================================================ | | Sat, May 01, 2004 - 7:45:38 am | | ray> | Michal, | | I didn't make that spelling, it's "void freeinkons(void)" in the original | code; just another example of Haro being careless, I'd say. So I will | fix the mistake and use "FreeIcons" (the 'c' is used everywhere else). | | BTW, congratulations on Poland being admitted to the EU. | | | ============================================================================ | | Sat, May 01, 2004 - 2:34:35 pm | | glennmcc> | Naw...... Haro was not being careless. | | That's the function we use for freein' the ikons | | freeinikons looks goofy so we drop the 2nd 'i' to get freeinkons | | | ============================================================================ | | Sat, May 01, 2004 - 2:58:12 pm | | ray> | Sheesh, pard, if I'da known Haro was an Amaricun I'da known that. | Jimminy, Freein' 'kons ... it's so obvious. . | | On a more sober note: | | I got the !@#$%^&* bug again :-(. As always five garbage characters | terminated with an "!". Like you said, she goes into hiding but she's | still there. Now what is it?? Today is the first of the month, maybe? | è ä! | | | ============================================================================ | | Sat, May 01, 2004 - 2:59:14 pm | | ray> | Hah, there it is again! | | | ============================================================================ | | Sat, May 01, 2004 - 2:59:41 pm | | ray> | Come for me you bitch! | | ============================================================================ | | Sat, May 01, 2004 - 3:00:03 pm | | ray> | Coward! | | | | ============================================================================ | | Sat, May 01, 2004 - 3:01:00 pm | | ray> | Maybe you don't like question marks? | | | ============================================================================ | | Sat, May 01, 2004 - 3:01:47 pm | | ray> | Gonna find you and kill you. | | | ============================================================================ | | Sat, May 01, 2004 - 4:13:35 pm | | mht> | Ray, I didn't try to say that it was your mistake -- impossible, it was | already in the original sources. I guess that the original author(s) | did search-and-replace to translate Czech function names into English. | | > BTW, congratulations on Poland being admitted to the EU. | | And Czech Republic as well ;-) | Plus Slovakia, Hungary, Slovenia, Lithuania, Latvia, Estonia, Malta | and Cyprus. | | | ============================================================================ | | Sat, May 01, 2004 - 5:48:30 pm | | ray> | Michal, | | No problem! ... it could very well have been my mistake, I expect to | make a few, what with renaming hundreds of functions. | | Anyway, I hope the EU works out for Poland. We have supposed | 'free trade' over here, too, but in practice it doesn't seem to | the eutopia that it is supposed to be -- Glenn, and those other | nasty Americans, won't play fair ;-) | | | ============================================================================ | | Sat, May 01, 2004 - 7:20:27 pm | | glennmcc> | Hey.... watch it. | | Don't be lumping all of us in the US together. | | Myself and many others like me have been advocating a | 'world market place' for many years. | | What we would like to see is for this entire planet to become a 'free trade | zone'. | | No import tariffs, no restrictions on imports or exports. | | Jut as easy for me to buy a TV from a retailer in Japan, China, Czech | Replublic, | Russia, Canada, Austrailia, India, etc...etc..etc... | as it is to buy it from the appliance store 1/2mi down the road. | | Just as easy for a store in the Czech Replublic to buy stock from any of | those countries as it is to get it from the warehouse 2 towns over. | | Basically......... | EVERYTHING in this world should be just as restriction-free as the internet | is. | | ============================================================================ | | Sat, May 01, 2004 - 10:05:37 pm | | ray> | I'm quite abivalent about free trade; I don't think it's a simple | question at all. There's no doubt that the propagandists on both sides | tend to paint their camp as the Saviours Of The World and the opposing | camp as either stupid or Evil or both. I'd say the 'pro' side | has the more obvious case. OTOH, I feel that the dangers of | globalisation, though perhaps not so obvious, are very real just the | same. What I'm *sure* I don't like is a situation like we have now | with NAFTA -- free trade in theory, but another matter entirely in | practice. | | | | ============================================================================ | | Mon, May 03, 2004 - 3:34:08 am | | mht> | The problem is definitely very compound, at least as long not EVERYTHING | is restriction-free (BTW, Internet access is restricted in many countries). | Without parallel globalisation of human rights, work standards, environment | protection standards etc., worldwide free trade can do as much wrong as | good, and the belief that the "economical" globalisation immediately | implies the other one is at least a bit too idealistic, because too much | money (also entirely out of public inspection) is involved. | | For me, the difference between these two models of globalisation are | somewhat like between Internet for everyone and Internet for Windows | users only. | | | ============================================================================ | | Mon, May 03, 2004 - 7:39:18 am | | ray> | Exactly. Already, in too many situations, we see that globalisation | has worked only to increase the profits of the very rich. Sure, the | third-worlder is offered a job in some sweatshop, which s/he 'wants', | but the final outcome seems to be the complete enslavement of entire | economies to western interests. As Michal, I think, would agree, | free trade is good between countries that 'play by the same rules'. | | | ============================================================================ | | Mon, May 03, 2004 - 11:07:15 am | | mht> | Yes. Too little effort is spent to export 'the rules', as it does not | generate any quick material profit. | | | ============================================================================ | | Mon, May 03, 2004 - 1:10:49 pm | | ray> | Hey Michal, it just occured to me: you once said that you still use | 5 1/4 floppies. I've got about 100 of them, and a few drives, too; if | you think it would be worth while, I'd be happy to send them to you | if you want them. | | | ============================================================================ | | Mon, May 03, 2004 - 3:39:51 pm | | mht> | Well, currently I have both 3.5" 1.44M and 5.25" 1.2M drives in all | the machines I use (I like "completely" equipped machines), except of my | notebook (do you have an external USB 5.25" drive for me? joking, I doubt | if such ones exist, and don't need it anyway). I think I even saw another | unused drive in my father's room. The number of 5.25" 1.2M and 360K | floppies hidden in all corners of my room is also pretty satisfying. | | But if you want to just throw them away... hmmm, maybe I should start | thinking about some asylum for "legacy equipment"? ;-) | | (This reminds me the thread from one of our mailing list -- who has the | oldest computer?) | | | ============================================================================ | | Mon, May 03, 2004 - 4:13:12 pm | | glennmcc> | re"free trade is good between countries that 'play by the same rules'." | | Agreed. | But.... 'free' == 'no restictions' | | Which means that everyone MUST play by the same rules because | the only rule which exists is............ no restictions. | | This of-coarse, is in an 'ideal world'. | | But since we do not live in an idea world.... all of what we are | proposing will never happen. :(( | | | ============================================================================ | | Mon, May 03, 2004 - 4:15:56 pm | | glennmcc> | Who has the oldest computer ?? | | Can you beat a TRS-80 Model 1, circa 1978 ? | | | | ============================================================================ | | Mon, May 03, 2004 - 5:27:16 pm | | ray> | Can you beat ... Nope. | | Michal, OK, I'll hang on to them, but if you ever need them, just ask. | | | ============================================================================ | | Mon, May 03, 2004 - 6:14:42 pm | | Joe> | Nope, my oldest computer (which I acquired a few years ago) is a | 1979 Exidy Sorcerer (have I spelt that right?) with hard-sectored (!) | Micropolis floppy disk drives. Both drives were faulty, one producing | smoke on power-up, however, I managed to combine bits from both drives | to produce a working drive (based mostly on the "smoking one", actually). | This allowed me to read the floppy disks and copy Compass Pascal 3.02, | which was the compiler Borland licensed to produce Turbo Pascal. Some | day (IF time is ever going to be available), I plan to make an interface | to some soft-sectored 360K drives I have gathering dust, along with my | own BIOS (for CPM) to suit. | | Anyway, there are some specialty suppliers who still have 8" drives and | media, so 5.25" 1.2M drives will become "valued" some day ... when they | become a bit scarcer ... | | | | ============================================================================ | | Mon, May 03, 2004 - 7:48:17 pm | | ray> | 'can't compete with you guys ... but I once saw a 12" floppy drive -- | looked almost exactly like a 5 1/4 except for the size. | | ============================================================================ | | Mon, May 03, 2004 - 8:15:43 pm | | Joe> | Wow! I hadn't realized 12" floppy disks existed, let alone seen one! | | ============================================================================ | | Mon, May 03, 2004 - 8:17:04 pm | | glennmcc> | Well, looks like I've got the oldest one within the 3 of us. | | Which BTW, is my first machine. | | Purchased in Nov 1978 at Radio Shack in Louisville, KY | | Came with Level I BASIC and 4k of RAM | (no disks of any kind....... cassette tapes for storage) | | In Sep 1979 I had her upgraded to Level II BASIC, added a numeric kep pad | and increased the RAM to a whopping 16k | | Still works just fine too. :)) | | | ============================================================================ | | Mon, May 03, 2004 - 8:20:03 pm | | glennmcc> | The only 2 add-ons I ever bought for her..... | | 'VOX-BOX' speach recognition devicea nd the Voice synthesizer. | | ============================================================================ | | Mon, May 03, 2004 - 8:39:36 pm | | ray> | ... strange thing, but I'm nostalgic for I time I never knew, but | would have benifited from knowing. Being a Scotsman and a byte | hoarder by nature, I would have done well in the days when | every byte counted. Those lessons in frugality are valuable. | | | ============================================================================ | | Tue, May 04, 2004 - 2:01:56 am | | mht> | I can't beat you, no way, although I still have an Atari 800XL: 8-bit | 6502 CPU at 1.77 MHz, 64 KB RAM, ca. 1983, purchased ca. 1987 (my first | computer at home) -- still working, except of the broken power supply | (never found time to either fix it, find a new one or make a replacement | by myself, as I was already working more with PCs at that time). As soon | as I could afford it, I bought an Atari 1050 floppy drive (5.25" single- | sided, 90 KB at Single Density (FM, 40 x 18 x 128) or 130 KB at Enhanced | Density (MFM, 40 x 26 x 128), connected by Atari serial port with | shocking data transfer rate 19200 bit/s (yes, ca. 2 KB/s -- but still | much faster and infinitely more reliable than a tape recorder). My | biggest finished project was a game ("Melkmaschine", 1992, never | distributed except to a few friends) -- written entirely in assembly | language, with my own graphics, music and sound effects (FM + digital | samples); executable size: ca. 11 KB (!). | | Hey, I'm getting sentimental! ;-) | | | | ============================================================================ | | Tue, May 04, 2004 - 2:50:28 pm | | ray> | I heard from Gregy -- he's still alive, but bogged down with | work (probably has a 'real life') < g g >. | | | ============================================================================ | | Tue, May 04, 2004 - 7:05:08 pm | URL | | glennmcc> | Michal, | | Ooooooo, | | You went for the 'fancy model' of Atari computer. | | I've still got my Atari 400 which I bought back in 1980 or 1981 | | I really hated the 'flat membrane' keyboard so I removed it and built a | new one from scrounged parts. (even etched my own circuit board for it) | | I'll upload a photo in few minutes. | | http://www.angelfire.com/linux/glennmcc/images/atari400.jpg | | ============================================================================ | | Tue, May 04, 2004 - 7:13:56 pm | URL | | glennmcc> | Close-up showing the visible portion of my home-made circuit board. | | | ============================================================================ | | Tue, May 04, 2004 - 8:28:29 pm | | RAY> | Out-bloody-standing. | | ============================================================================ | | Tue, May 04, 2004 - 8:34:58 pm | | glennmcc> | Thank you Ray. :) | | It's hard to believe that over 20 years have gone by since I did that. | | ============================================================================ | | Tue, May 04, 2004 - 8:38:17 pm | | glennmcc> | And this Nov, it will be 26yrs since puchasing the TRS-80 | | My, how time flys when we're having fun. ;-) | | | ============================================================================ | | Tue, May 04, 2004 - 8:57:44 pm | | ray> | Hey Joe, you might be interested to know that I've 'seen the light' | vis. IE.H -- it's back :-) ... what mislead me was the way that | it was #included (via 'bin_file.h') in 'url.h' ... made me think that | there was a 'special relationship, between the files, when infact | there is none. | | ============================================================================ | | Wed, May 05, 2004 - 2:10:05 am | | Joe> | Good to hear, Ray. | | Sure, ie.h and 'bin_file.h' are related, however 'url.h' .... | | ============================================================================ | | Wed, May 05, 2004 - 8:55:45 am | | ray> | Yup, that's about the size of it. | | Me, I've got a rather unique attitude toward breaking things -- I like | it -- it's very instuctive. When I'm reparing some machine that I've | never worked on before, if I can't figure out what some part does, | I take it off and see what changes. By 'breaking' the machine, I | gain understanding. Same with software; I don't hesitate to make | mistakes since I can learn more from a really good mistake than I can | from doing it right the first time. (Of course, one must be careful | that one can undo the mistake :-) | | | | ============================================================================ | | Wed, May 05, 2004 - 3:36:36 pm | | suethsayer> | I see 'much undoing' in Ray's future ;) | | ============================================================================ | | Wed, May 05, 2004 - 4:23:53 pm | | mht> | Nice work, Glenn. These small red buttons at right are Option, Select, | Start and Help, I guess, and the Big Red Button is Reset, isn't it? | Is your Atari 400 still running? Do you have a tape recorder for it, | or maybe a floppy drive? -- IIRC, the Atari drive available at that time | (was it Atari 850?) had only Single Density (90 KB) -- or just some | games/BASIC/whatever on cartridges? And how much RAM does it have, 16 KB | or less? The other hardware is almost the same as in 800XL, except of the | earlier version of the graphics chip (CTIA) and four joystick ports | reduced to two in later models, IIRC. Hey, I should even have a circuitry | diagram of 800XL somewhere... | | ============================================================================ | | Wed, May 05, 2004 - 8:20:24 pm | | ray> | Glenn, | | Yup, there will be lots to undo. As I said before, if I bat .700 on | this, I'll be very happy. Just today I undid two function moves that | were done in my wild, younger days. The nice thing ... | | and that reminds me: Just today I noticed something that don't seem | right. When Arachne is making contact (just after dialing, and before | things 'click in' have you ever noticed that your HDD light | flickers? I'm guessing that there's a module involved that's linked | overlay, so that the manager has to continualy reload it. Sure enough | 'atcpip.c' and 'adial.c' are both overlaid. Do you think there's | anything to it? | | | ============================================================================ | | Wed, May 05, 2004 - 8:31:16 pm | | glennmcc> | The HDD light 'flickers' and so does the screen. | | That is because when we dial, we have 'shelled' to DOS to run the dialer | program. | (miniterm or lsppp) | | Arachne is then 'restarted'. | | ============================================================================ | | Wed, May 05, 2004 - 10:29:36 pm | | ray> | Nope, that's not what I mean. It's not the single pause of a shell to | DOS. It flickers at a steady rate about | 4 times per second. After a slow connect, if I then quit to DOS | and ask dumbdrv what it's been up to, it reports something like | 100,000 cache hits. I figure that some module is being called | from the .exe on disk (or cache) very often until the connection is | made ... or not ... I dunno really. | | ============================================================================ | | Wed, May 05, 2004 - 10:39:17 pm | | glennmcc> | I get no such action as you describe. | | And this is what "nwcache /s" says. | | | NWCache R1.02 Disk Cache | Copyright (C) 1993, 1996 Caldera, Inc. All rights reserved. | Copyright (C) 1985, 1990, 1992, Golden Bow Systems. | | Cache size: 7670 KB (XMS) | Minimum cache size: 1024 KB | Buffered write drives: A B | Delayed write drives: C D E F G H I J K | | Current options: | /MU Program is loaded into upper memory | /BU=16 Lookahead buffer is located in upper memory, size is in KB | /LEND=ON Lend memory to other applications - 6646 KB available | /DELAY=5000 Write delay is enabled, time is in milliseconds | /FLUSH=ON Flush delayed writes before returning the prompt | | Disk Usage Statistics: Error Statistics: | Command Requests #Done Saved 0 Memory Manager Errors | Reads: 791 123 84% 0 Disk Transfer Errors | Writes: 100 35 65% 0 Errors Ignored by User | | | | ============================================================================ | | Wed, May 05, 2004 - 10:40:03 pm | | glennmcc> | Which version of core.exe are you running ? | | ============================================================================ | | Thu, May 06, 2004 - 12:00:51 pm | | ray> | 1.73 /B3 ... | | Never mind, Glenn -- no big deal. It seems I'm having modem | trouble anyway, so that could be it. She's dialing OK, modem squeal OK, | but then she's hanging up. I'll be swapping modems, changing machines, | .... all the usual stuff to try to figure out what's the trouble. | So my flickering light thing could be a red herring. | | | ============================================================================ | | Thu, May 06, 2004 - 4:35:09 pm | | glennmcc> | Red herring ???? | | Ooooooo........ bad stuff. :( | | Personally, I prefer pickled herring. ;-) | | | ============================================================================ | | Thu, May 06, 2004 - 5:46:09 pm | | ray> | Na, red herrings are best for breakfast. We call them kippers here | in Canistan. | | | ============================================================================ | | Sat, May 08, 2004 - 8:02:28 pm | | glennmcc> | Re: [a4dos-list] 6 months ago.......... | | On Sat, 8 May 2004 19:26:20 -0400, Glenn McCorkle wrote: | | > Well folks, | | > It was exactly 6 months ago today that Michael Polák | > gave his 'OK' to release Arachne v1.73;GPL | | > Today seems as good a time as any to declare that all | > futher developemnet of v1.75;GPL is "officially closed". | | > I will now begin working on v1.77;GPL | | > Please visit my site for more info. | | > And for what you might call "a very nice surprise" !!! :)))) | | > -- | > Glenn | > http://www.delorie.com/listserv/mime/ | > http://www.cisnet.com/glennmcc/ | > http://www.cisnet.com/glennmcc/aqc/ | > http://www.law.cornell.edu/constitution/constitution.table.html | | ============================================================================ | | Sun, May 09, 2004 - 12:11:36 pm | | ray> | Glenn, | | Got 175 OK, but (apart from that!) what's the nice surprise? | | | | ============================================================================ | | Sun, May 09, 2004 - 2:57:41 pm | | glennmcc> | I spend 6 months working on it...... and that's all you have to say ??? | | What the hell more do you want for god sakes ?!?!?!?! | | | BTW, | | You're welcome | | | ============================================================================ | | Sun, May 09, 2004 - 3:49:44 pm | | ray> | Glenn, | | I said "but (**apart** from that!) what's the nice surprise" ... | the way you phrased your anouncement it sounded like you were | releasing 175 *and* there would be some unexpected aditional | surprise. I most certainly didn't mean to suggest ... | well, I hope you understand. Do you really think I'd ... | never mind, sorry if I offended by seeming to slight your work. | | | | ============================================================================ | | Sun, May 09, 2004 - 3:53:32 pm | | ray> | Sheesh, hard to walk away from that. Gotta sit hear and | stare at the screen for a while. Holy Cow! | | | ============================================================================ | | Sun, May 09, 2004 - 5:12:52 pm | | glennmcc> | I just _knew_ THAT would "get your goat". | | Jab.... jab..... jab........ | | I hope you have a fun time with the new version. :))) | | ============================================================================ | | Sun, May 09, 2004 - 5:15:25 pm | | glennmcc> | And as for an additional surprize............... | | You're just gonna' hafta' wait a little while longer. | | ============================================================================ | | Sun, May 09, 2004 - 5:28:52 pm | | ray> | God! ... did it ever. | | You found one of the weakest links in my armour, and that is the | fact that I do, often, offend people without the slightest intention | of doing so. | | Phew. | | | ============================================================================ | | Sun, May 09, 2004 - 5:38:50 pm | | glennmcc> | No worries, mate. | | It takes one heck of a lot more than that to offend me. | | Now... if you were to say something like "Your new version sucks" | | THEN....... I would still not be offended. | | I'de just come hunt ya' down and kill ya' ....... that's all. | | But I would not be offended. | | ============================================================================ | | Sun, May 09, 2004 - 5:49:02 pm | | glennmcc> | Oh yeah, | | I fixed some mistakes with dates and ver #s that were in 4 of the files | and then re-uploaded both 'pakages'. | | Here's the new copy of filelist.txt | | | List of changed files between v1.73;GPL and v1.75;GPL | ____________________________________________________________________________ | | --a--- 4,439 5-08-04 6:00p k:\arachne\changes.txt | --a--- 468,824 5-07-04 10:32p k:\arachne\core.exe | --a--- 827 11-09-03 4:52p k:\arachne\file_id.diz | --a--- 1,859 11-09-03 4:53p k:\arachne\help.htm | --a--- 1,899 4-11-04 11:32p k:\arachne\idxfast.htp | --a--- 2,178 4-11-04 11:33p k:\arachne\idxhead.htp | --a--- 83,856 4-27-04 10:23p k:\arachne\insight.exe | --a--- 18,009 11-09-03 5:03p k:\arachne\readme.txt | --a--- 2,695 11-13-03 1:57a k:\arachne\reply.htp | --a--- 2,739 11-13-03 1:57a k:\arachne\resend.htp | --a--- 28,040 11-17-03 10:16p k:\arachne\wwwman.exe | | --a--- 2,393 5-09-04 6:06p k:\arachne\mail\welcome.cnm | --a--- 298 5-09-04 6:04p k:\arachne\system\apm.db\175gpl.htm | --a--- 236 5-09-04 6:04p k:\arachne\system\apm.db\insight.htm | --a--- 310 5-09-04 6:04p k:\arachne\system\apm.db\wwwman.htm | | --a--- 3,714 11-10-03 12:22a k:\arachne\system\gui\conf_lan.ah | --a--- 910 4-30-04 3:10a k:\arachne\system\gui\err_pop3.ah | --a--- 884 4-30-04 12:52a k:\arachne\system\gui\err_smtp.ah | --a--- 8,000 11-10-03 12:21a k:\arachne\system\gui\opt_loc.ah | --a--- 6,502 11-10-03 12:21a k:\arachne\system\gui\opt_net.ah | --a--- 7,228 5-01-04 12:48a k:\arachne\system\gui\opt_pers.ah | --a--- 3,717 11-13-03 1:54a k:\arachne\system\gui\sendfile.ah | --a--- 2,761 11-13-03 1:54a k:\arachne\system\gui\sendmail.ah | total files 23 | total bytes 652,318 | ____________________________________________________________________________ | | | ============================================================================ | | Sun, May 09, 2004 - 6:01:31 pm | | ray> | ... but on to more festive matters ... | | Glenn, is it a 'drag and drop' for my '173 arachne.cfg into '175, | or are there changes that need to be adressed? | | | | ============================================================================ | | Sun, May 09, 2004 - 6:12:27 pm | | ray> | drag and drop seems to work OK :-) | | ============================================================================ | | Sun, May 09, 2004 - 6:30:12 pm | | glennmcc> | Yep... no problem. | | Now hit O and visit each of these screens to enable the 'new options' | | Some of which were also in v1.73, some are new to v1.75 | (especially ...... Authenticated SMTP, on Opt_pers.ah ) | | \arachne\system\gui\opt_loc.ah | \arachne\system\gui\opt_net.ah | \arachne\system\gui\opt_pers.ah | | | ============================================================================ | | Mon, May 10, 2004 - 10:25:09 am | | ray> | Roger. | | | | ============================================================================ | | Wed, May 12, 2004 - 10:24:23 am | | ray> | Glenn, | | So far, so good with 175. Surprisingly, I find I can drag and drop | my janitor's core.exe into 175 with no obvious problems, but wheras | my core.exe gives me 162[+], the virgin core.exe gives me 142[+] -- | hard to imagine where that 20K went/came from. I suspect the | previous number is bogus anyway. | | ============================================================================ | | Wed, May 12, 2004 - 4:31:46 pm | | glennmcc> | Is that version you are refering to compiled for 386+ ??? | | Mine is compiled for 8088/8086 | | ============================================================================ | | Wed, May 12, 2004 - 7:10:44 pm | | ray> | That woudld be it! ... thanks man. | | BTW, I'll be switching cores quite a bit since I've got to | be sure that I haven't busted something, so it's nice to know | that the swap is painless. Also, I'm having some strange trouble | logging on at times and I'm always scared S-less that it's because | I've blundered, so swapping cores is a useful diagnostic. | | | | ============================================================================ | | Thu, May 13, 2004 - 5:49:25 pm | | ray> | ... just noticed the changing colors of the menu icons ... cute, | and useful. | | ============================================================================ | | Thu, May 13, 2004 - 6:51:21 pm | | glennmcc> | ???? | | What'ch U talkin bout Willis ? | | ============================================================================ | | Thu, May 13, 2004 - 7:02:16 pm | | ray> | Huh? ... don't tell me I'm having a bad trip or somethin' | but my inbox and outbox icons (the 'open folder' icons) have been | turning from black to blue to lime green! ... maybe I should get | back to playing 'purple haze' on my cello ... | | | | ============================================================================ | | Thu, May 13, 2004 - 10:01:54 pm | | glennmcc> | Perhaps you should............. they ain't been changed, dude. | | They are the same as they have been for several years. | | ============================================================================ | | Fri, May 14, 2004 - 8:49:39 am | | ray> | Hmmmm, no lime green? ... well, more like day-glo green? ... next | you'll tell me there's no leprechaun looking out from the XCH logo. | | | | ============================================================================ | | Fri, May 14, 2004 - 9:14:21 am | | mht> | If we are talking about strange visual effects in 1.75, when I was | doing a fresh install (into a separate directory), I got two setup | screens displayed one over another (i.e., it looked like the screen | was not cleared before displaying the next page). I should have a | screenshot somewhere. | | | | ============================================================================ | | Fri, May 14, 2004 - 11:19:20 am | | ray> | Yes, it was in 1.75 that I saw strange colours in my icons. What you | describe is very strange indeed. | | | ============================================================================ | | Fri, May 14, 2004 - 6:12:58 pm | | glennmcc> | A leprechaun ??????? | | No... but Marvin the Martian peaks around the corner once in a while. | | | ============================================================================ | | Fri, May 14, 2004 - 7:54:35 pm | | ray> | I don't know what it is, but this nice man I met downtown told | me I'd like it. | | | ============================================================================ | | Fri, May 14, 2004 - 7:58:09 pm | | ray> | BTW, it turn out that my ISP problem was nothing more sinister than | a bleedin' busy signal ... my modem used to let me hear all that | stuff before it connected, but it stopped for some reason and didn't | even have the courtesy to tell me, so I thought something horrible | was happening. That non-problem solved, back to 175 (and the | pink elephants). | | | ============================================================================ | | Fri, May 14, 2004 - 9:22:06 pm | | glennmcc> | Now... cut that out !!!! | | My 6ft tall invisible white rabbit is gonna kick yer butt if you don't. | | | ============================================================================ | | Sat, May 15, 2004 - 5:46:04 am | | mht> | Glenn, I just sent the screenshot of the garbled setup page | to your Yahoo! account. | | | | ============================================================================ | | Sat, May 15, 2004 - 2:48:46 pm | | glennmcc> | Good thing you let me know about it here. | | I only check the yehaw mail once a week | (and last night was it till next week) | | I'll go check it now. | | ============================================================================ | | Sat, May 15, 2004 - 2:58:43 pm | | glennmcc> | Now THAT is strange. | | What graphics settings had you chosen on the previous screen ? | | Have you been able to duplicate it ? | | ============================================================================ | | Sun, May 16, 2004 - 5:39:47 am | | mht> | VESA 800x600 HiColor, reproducible, but only in specific conditions. | | Arachne must be almost out of memory. When I run setup from the command | prompt, it works fine. When I run it under Volkov Commander, it refuses | to run. And under DOS Navigator (leaves more free memory than VC), it | garbles the screen. MEM under DN shows largest EXE = 583K. With 595K | (plain DOS), the problem disappears. Well, my fault to some extent, but | everyone would rather expect to either get "out of memory" error or see | everthing working. | | One more reason to improve memory allocation; difficult because | allocations and deallocations seem to be very frequent and scattered | in many sections of the code. | | | | ============================================================================ | | Sun, May 16, 2004 - 5:46:34 am | | mht> | (So, the problem is probably not specific to 1.75, although it may | now happen a bit more frequently, if the new features result in | increased memory requirements.) | | | ============================================================================ | | Sun, May 16, 2004 - 8:00:53 am | | mht> | BTW, have a look at ArachneDevelopment messages. | Interesting differences between BCC and BC IDE. | Can anyone explain this? Maybe the printed documentation of BC | would be helpful? | | | ============================================================================ | | Sun, May 16, 2004 - 10:54:39 pm | | glennmcc> | That was a good idea. | | Or so I thought. | | Been searching, and searching through my printed manual........ | | Nothing :(( | | | ============================================================================ | | Sat, May 22, 2004 - 9:19:20 pm | | ray> | Greeeee-geeeeee where are you? | | ============================================================================ | | Fri, May 28, 2004 - 11:00:16 am | | ray> | Glenn, Joe: | | I'm about ready to start incorporating you guy's changes | into the cleaned code. I thought I'd do Glenn's first so that | we'd have an edition of the code that parallels 1.75 exactly. | I notice that Glenn has used some of Joe's improvements, but | not all. This is OK as far as it goes, but when I come to do | the rest of Joe's stuff, I'm concerned that there could be | synchonization problems -- or not. Any comments or | advice on this? | | | ============================================================================ | | Fri, May 28, 2004 - 3:50:05 pm | | ray> | man, i just saved 160 bytes by reordering one structure. That's | what paying attention to word alignment can do, eh Joe? | | | | ============================================================================ | | Fri, May 28, 2004 - 5:26:09 pm | | glennmcc> | Yep, for my compile and release of v1.75;GPL the only one of Joe's | improvements I used was the stuff that gets the online timer working | when using BOOTP | | IIRC, all of the rest of them require that core.exe be compiled for 386+ | | I wanted to make just this one last release for 8086/8088 | | IMO, | | v1.77;GPL and beyond should now be for 386+ | | | What say the rest of you ? | | | | ============================================================================ | | Sat, May 29, 2004 - 11:44:46 am | | mht> | Well, there is also an intermediate option: 80186/88. These chips | support extended 16-bit real mode instruction set as 80286, and this | option makes the executable also noticeably smaller (and a bit faster) | than 8086/88 one. Such a CORE.EXE would run on any AT machine | (preferably with a few MBytes of extended/expanded memory), small | portable machines like famous HP200LX series (IIRC, 20 MHz 80186 and | many, many MBytes of expanded memory) and even on these XTs whose 8088 | chips have been replaced by NEC V20 chips (though the performance may | be poor even with an expanded memory card). | | Eliminating the floating point emulation library (needed for x87-less | systems due to FP usage in scaling images, typesetting tables and maybe | elsewhere) will save a few KBytes of code as well, but the FP-based | algorithms need to be replaced with integer-based ones. Image scaling | is on my current to-do list, of course. | | Of course, since most Arachne users have a 386+ anyway, the default | CORE.EXE should be compiled for 386+. But as long as we can build it | for 186+, why not? | | | ============================================================================ | | Sun, May 30, 2004 - 2:58:49 pm | | ray> | Yep, just got a msg. from my ISP saying | (you guessed it), that they don't use Authenticated SMTP. | They say they authenticate via the customers IP ... whatever | that means. Sorry for the bother. | Now how can I check the integrity of my sources? | | | | ============================================================================ | | Sun, May 30, 2004 - 3:52:02 pm | | glennmcc> | Give it a try the same way I found out for sure | that your ISP is not using it. ;-) | | Setup Arachne to use my ISP for outgoing mail. | | mail.cisnet.com | | Now see what your SMTP.LOG file shows. ;-) | | | | ============================================================================ | | Sun, May 30, 2004 - 4:31:35 pm | | ray> | Now there's an idea! | | ... how do I do it <:-( | | Just change the mail settings? Or do I need another DNS, etc? | | | ============================================================================ | | Sun, May 30, 2004 - 5:25:40 pm | | glennmcc> | Yep, just change your mail settings from mail.995.ca to mail.cisnet.com | | You will not be allowed to send because you don't have my password. | | But your SMTP.LOG should look like this. | | 220 cisnet.com VOPmail ESMTP Receiver Version 4.5.186.0 Ready | EHLO ray_a | 250-cisnet.com | 250-SIZE 0 | 250-ETRN | 250-ENHANCEDSTATUSCODES | 250-X-IMS 5 69814 | 250-DSN | 250-VRFY | 250-AUTH LOGIN NTLM SCRAM-MD5 CRAM-MD5 | 250-AUTH=LOGIN | 250 8BITMIME | AUTH LOGIN | 334 VXNlcm5hbWU6 | cmF5X2E= | 334 UGFzc3dvcmQ6 | amluZ2xlZnJpdHo= | 500 5.7.0 Authentication failed - bad userid or password | QUIT | | | | ============================================================================ | | Sun, May 30, 2004 - 5:34:35 pm | | glennmcc> | As opposed to this when you have a valid username/password combo. | | Z2xlbm5tY2NAY2lzbmV0LmNvbQ== decodes to ... glennmcc@cisnet.com | | ******** _was_ my base64 encoded password | | | --- smtp.log --- | 220 cisnet.com VOPmail ESMTP Receiver Version 4.5.186.0 Ready | EHLO cisnet.com | 250-cisnet.com | 250-SIZE 0 | 250-ETRN | 250-ENHANCEDSTATUSCODES | 250-X-IMS 5 69814 | 250-DSN | 250-VRFY | 250-AUTH LOGIN NTLM SCRAM-MD5 CRAM-MD5 | 250-AUTH=LOGIN | 250 8BITMIME | AUTH LOGIN | 334 VXNlcm5hbWU6 | Z2xlbm5tY2NAY2lzbmV0LmNvbQ== | 334 UGFzc3dvcmQ6 | ******** | 235 2.0.0 authenticated | MAIL FROM: | 250 2.0.0 glennmcc@cisnet.com OK | RCPT TO: | 250 2.0.0 glennmcc@mail.cisnet.com OK | DATA | 354 Ready for data | From: "Glenn McCorkle" | Organization: Arachne Fan Club | Date: Sun, 30 May 2004 19:31:56 -0400 | X-Mailer: Arachne V1.77;GPL | To: | Reply-To: glennmcc@cisnet.com | Bcc: glennmcc@cisnet.com | Subject: testing... | MIME-Version: 1.0 | Content-type: text/plain; charset=ISO-8859-1 | Content-transfer-encoding: 7bit | | testing.... | | -- | Glenn | http://www.delorie.com/listserv/mime/ | http://www.cisnet.com/glennmcc/ | http://www.cisnet.com/glennmcc/aqc/ | http://www.law.cornell.edu/constitution/constitution.table.html | . | 250 2.0.0 Message received OK | QUIT | | | | | ============================================================================ | | Sun, May 30, 2004 - 7:55:01 pm | | ray> | OK, I'll print off the above and give it a go latter tonight or | tommorow afternoon. | | ============================================================================ | | Sun, May 30, 2004 - 9:02:33 pm | | ray> | Glenn, | | | Lookin' good; this is what you were expecting me to get: | | | 220 cisnet.com VOPmail ESMTP Receiver Version 4.5.186.0 Ready | | EHLO ray_a | | 250-cisnet.com | | 250-SIZE 0 | | 250-ETRN | | 250-ENHANCEDSTATUSCODES | | 250-X-IMS 5 69814 | | 250-DSN | | 250-VRFY | | 250-AUTH LOGIN NTLM SCRAM-MD5 CRAM-MD5 | | 250-AUTH=LOGIN | | 250 8BITMIME | | AUTH LOGIN | | 334 VXNlcm5hbWU6 | | cmF5X2E= | | 334 UGFzc3dvcmQ6 | | amluZ2xlZnJpdHo= | | 500 5.7.0 Authentication failed - bad userid or password | | QUIT | | This is what I got: | | EHLO 995.ca | 250-cisnet.com | 250-SIZE 0 | 250-ETRN | 250-ENHANCEDSTATUSCODES | 250-X-IMS 5 69814 | 250-DSN | 250-VRFY | 250-AUTH LOGIN NTLM SCRAM-MD5 CRAM-MD5 | 250-AUTH=LOGIN | 250 8BITMIME | AUTH LOGIN | 334 VXNlcm5hbWU6 | cmFuZHJld3NAOTk1LmNhICA= | 334 UGFzc3dvcmQ6 | bGV0bWVub3Q= | 500 5.7.0 Authentication failed - bad userid or password | QUIT | | | Pass? | | | ============================================================================ | | Mon, May 31, 2004 - 5:06:19 am | | glennmcc> | Yep. | | She passes with flying colors. :) | | ============================================================================ | | Mon, May 31, 2004 - 5:09:07 am | | glennmcc> | Uh oh.... | | If these are your base64 encoded username and password..... | | cmFuZHJld3NAOTk1LmNhICA= | bGV0bWVub3Q= | | You will now need to change your password. | | Anyone with a base64 decoder (about 3 billion people), will now have it. | | | ============================================================================ | | Mon, May 31, 2004 - 5:22:45 am | | glennmcc> | Change it.... quick. | | I just now got into you inbox via telnet :(( | | | ============================================================================ | | Mon, May 31, 2004 - 11:05:15 am | | ray> | Oooops, | | Did I have any interesting mail? | | OK, I'll change it now, thanks for the warning, I'd never have | thought of that. | | | ============================================================================ | | Mon, May 31, 2004 - 11:07:23 am | | ray> | Hey, just out of curiosity, if it's so easy to decode these | Base 64 passwords, what good are they? As usual I don't no nuthin' | about this stuff. | | ============================================================================ | | Mon, May 31, 2004 - 12:19:58 pm | | ray> | Glenn, | | pwd changed, thanks (try to bust in again just to make sure). | | Michal, | | Sorry about the stupid 'line 21,930' comment yesterday -- I still | had MALLOCERR turned off. It seems the error in puticonw.c shows | up at: | | BufImg = IEgetSwap(hSwap); | if (!BufImg) | MALLOCERR(); | | Which suggests that IEgetSwap (defined in iekernel.c) is the culprit. | | | | ============================================================================ | | Mon, May 31, 2004 - 1:18:03 pm | | ray> | Yup, I can trace the problem back to this test (217/B4) in iekernel.c: | | if (ladr > SwapLen[lswap] | | I printed out all the values here, and: | | ladr == 1023 | SwapLen[lswap] == 0 | lswap == 63 | | So it looks like SwapLen[lswap] isn't being set properly when | 'Supress Redundant Loads' is on. | | | ============================================================================ | | Mon, May 31, 2004 - 3:58:02 pm | | mht> | Hmmm... do the compile options for IEKERNEL matter, or only those | for PUTIKONW? | | BTW, BASE64 is just an encoding, not an encryption scheme. Something | like hex numbers, just a bit more complicated ;-) | | | ============================================================================ | | Mon, May 31, 2004 - 4:55:33 pm | | ray> | Hey Michal, what time is it over there? I make it 1:00 in the morning | your time -- go to bed ;-) | | I'll check about compiler settings and report back. | Thanks for information on BASE64 I did think it must be an | encryption. | | I just finished doing something funny: I wanted to see what | the values for those variables in IEKERNEL were when things were | working, so I tried putting a 'printf' in there to show what the | values were; no luck. After some experimentation, I found that the | function IEputSwap is called *very* often ... I put: | | sound(200); | delay(1); | nosound(); | | In there, and Arachne turns into a mad geiger counter. I'm thinking | that must be the most called of any function. | | | ============================================================================ | | Mon, May 31, 2004 - 5:09:31 pm | | ray> | ... It looks like IEKERNEL is happy with SRL on, but PUTIKONW | needs to have SRL off. That's got to say something important. | | | ============================================================================ | | Mon, May 31, 2004 - 6:22:26 pm | | glennmcc> | Agreed | | It seems the _something_ within putikonw.c requires a 'redundant load' | | Now... to go through it step-by-step and what it is. | | ============================================================================ | | Mon, May 31, 2004 - 8:04:58 pm | | ray> | Yes, I think we're on the scent. So how can a register value be | fouled up unless via. ASM? I can't even imagine how you could | do such a thing in C. I'll bet Michal will bag it using his | disassembler trick. | | | ============================================================================ | | Tue, Jun 01, 2004 - 2:01:36 am | | mht> | I am at 17 deg East, my time zone is GMT+0100 (and GMT+0200 in summer). | But I'd bet that I posted my message at about midnigth, not at 01:00, | and went to bed shortly after... Maybe a summer time problem? | | How can a register value be modified in C? Borland C offers register | pseudo-variables: _AX, _BX, etc., and this way allows direct access to | registers (but this method has very limited applications, as the code | generated by the compiler also has to use registers, not even mentioning | that it isn't portable to other compilers). You could see an example | when I posted a piece of 'bad POSIX' code from HDRAWBMP.C. | | | ============================================================================ | | Tue, Jun 01, 2004 - 2:59:09 am | | mht> | By the way, a function call (like printf) will often make it impossible | to avoid re-loading some values into registers. Functions are allowed | to modify most of the registers (there are precise rules, of course | specific to Borland C); the compiler must assume that they are not | preserved across the function call (even if they actually are in the | particular case) and has to generate code to reload the values from | memory. | | | ============================================================================ | | Tue, Jun 01, 2004 - 10:15:27 am | | ray> | Michal, | | We're on Daylight Savings, here too. I just downloaded the message | a bit latter than you wrote it. I have a friend in Germany that I talk | to quite a bit, he is 9 hours ahead of me, and I'm guessing Poland | is the same. | | Anyway, you are an expert in these things, I expect that either you | or Glenn will figure this out soon. | | | | ============================================================================ | | Tue, Jun 01, 2004 - 1:56:16 pm | | ray> | BTW, Michal, | | Yesterday I watched a good TV program on Solidarity, and how it | started the fall of Communism. One thing I've always wondered: | | Lech Walesa ... his name always seems to be pronounced | | lek waleNsa ... should that "N" sound be in there? | | | ============================================================================ | | Tue, Jun 01, 2004 - 5:07:07 pm | | glennmcc> | Ray, | | Reset your video mode to VGA 16color | | Now hit the ? to do a 'dump' of what's currently in Xswap to the screen. | | | ============================================================================ | | Tue, Jun 01, 2004 - 6:25:08 pm | | ray> | OK. | | | | ============================================================================ | | Tue, Jun 01, 2004 - 6:44:59 pm | | ray> | ... Lotsa numbers like: | | s=32954 n=657, c=1 .... | | I dunno what it means. | | ... But I might have found something interesting. | I did this: | goto Ident1; | ± | x_palett(IiNPal, IiPal); ± | g_AktPalLen = IiNPal; ± | memcpy(g_LastPal, IiPal, 3 * IiNPal); ± | Ident1: þ | } ± | BufImg = IEgetSwap(hSwap); //Defined in 'iekernel.c' line 206 ± | ± | printf("hSwap = %d", hSwap); ± | getch(); ± | ± | if (!BufImg) //return on error ! ± | MALLOCERR(); ± | ± | bi1 = BufImg + Off; ± | /* ± | #ifdef TRANSPARENT_ICONS ± | if (xg_256 == MM_Hic) | | ... | | And recorded the values of 'hSwap' for both the SRL and non SRL | editions of putikonw.c and found this: | | SRL off: SRL on: | | 2048 2048 (OK) | 1025 8272 (Hang ... bogus value ?) | 1025 | 3072 | 3073 | etc. | on to sucessful run. | | ... so it looks to me like 'hSwap' is being set to a bogus value | somehow when SRL is on. | | | ============================================================================ | | Tue, Jun 01, 2004 - 6:46:16 pm | | ray> | I wish this board saved spacing inside lines :-( | | | ============================================================================ | | Tue, Jun 01, 2004 - 7:47:50 pm | | ray> | Glenn, | | The "?" key works just fine for me in VESA 800X600 mode. (Now if | only I knew what those numbers meant). | | | | ============================================================================ | | Wed, Jun 02, 2004 - 2:49:12 pm | | mht> | Ray, | Yes, Poland and Germany are in the same time zone. | How to pronounce Lech Walesa? Well, first, it is written a bit | differently. There should be a small slanted bar across the "l" | (Polish crossed l) and an "ogonek" (something like French cedilla, | but with its left and right sides swapped) below "e" in "Walesa". | E with "ogonek" denotes nasal E, so it sounds roughly like "en". | Crossed L is nowadays most often pronounced like English "w" in | "when" etc., while Polish "W" is like English "V" (we normally don't | use "V" at all). And "ch" denotes voiceless "h", something like | English "h" in "hold". So, "Leh Vawhensa" should reflect more or | less the correct sounds. | | | ============================================================================ | | Wed, Jun 02, 2004 - 3:12:58 pm | | ray> | Michal, | | Thanks for that. Phonetics is a passion of mine, so I am always | interested in learning the correct pronunciation of things. | | ============================================================================ | | Wed, Jun 02, 2004 - 3:58:28 pm | | mht> | I ran FC on two versions of PUTIKONW.ASM, one with "Suppress redundant | loads" enabled, the other with disabled. I haven't noticed anything | suspicious, but maybe I'm a bit too sleepy... | | BTW, this option seems to have a side effect: when enabled, 32-bit PUSH | instructions are used for passing parameters to functions on 386+, | instead of pairs of 16-bit PUSHes (another code size reduction then). | | | | ============================================================================ | | Thu, Jun 03, 2004 - 4:24:43 pm | | ray> | I just had a nasty thing happen with the editor bug: | | Got the usual "xxxx!" garbage string, but when I went to errase | it, the editor screen filled up with garbage and then the | probram aborted with a MALLOCERR msg. for lone 309 of 'onmouse.c' ... | that points to this: | | atomptr = (struct HTMLrecord *)IEgetSwap(current HTMLatom) | | ... note, it's the same function as in the 'putikown.c' problem. | Maybe this is significant? | | | ============================================================================ | | Fri, Jun 04, 2004 - 7:56:54 pm | | ray> | Michal, Glenn, | | Any progress on the 'suppress redundant loads' vs. putikonw.c | problem? | | I've got as far as identifying that the structure element | 'LknList List.hSwap' is not being written properly, but I can't | figure out where those values are supposed to be set in the first | place. | | BTW have any of you guys managed to get the debuging/trace | feature in the IDE to work? I can't make it happen nohow, I | get 'abnormal termination' messages. | | | | ============================================================================ | | Sat, Jun 05, 2004 - 5:26:27 am | | mht> | I'm trying to figure out which exactly differences between the code | generated for PUTIKONW.C with different optimization switches cause | the different behavior. | | I'm not sure whether Arachne can be traced and debugged from within the | IDE. It may be a too big program. Even if, 16-color VGA mode should be | probably set in order to avoid problems with screen switching. | | | | ============================================================================ | | Sat, Jun 05, 2004 - 2:32:33 pm | | glennmcc> | I wonder if this might work. | | Place all of the SRC files into the same dir as the 'working files' | | c:\arachne\(complete package, and SRC) | | Set up to be in VGA16 | | Debug core.exe using the correct commandline options as-if she were | started from arachne.bat | | | | ============================================================================ | | Sat, Jun 05, 2004 - 5:53:34 pm | | ray> | Glenn, | | Good idea, maybe my video settings were unaceptable. Will give | it a try. | | | BTW, here's another question for us to squable over: | | icon or ikon? ... right now there's a mixture and I'd very | much like to standardise on one or the other. Myself I have | a very week preference for icon. | | | ============================================================================ | | Sat, Jun 05, 2004 - 6:29:52 pm | URL | | glennmcc> | ;-) | | | ============================================================================ | | Sat, Jun 05, 2004 - 9:46:17 pm | | ray> | Short but sweet. If there are no objections it's Ikon/Ikn. | | | | ============================================================================ | | Mon, Jun 07, 2004 - 12:34:28 am | | phantom> | testing ... | | ============================================================================ | | Mon, Jun 07, 2004 - 12:34:49 am | | phantom> | Ray, sounds like you're running out of XSWAP memory, | which is something I've never encountered. Does this | also occur with the B0 code? | | Joe. | | Mon, May 31, 2004 - 1:18:03 pm | | ray> | Yup, I can trace the problem back to this test (217/B4) in iekernel.c: | | if (ladr > SwapLen[lswap] | | I printed out all the values here, and: | | ladr == 1023 | SwapLen[lswap] == 0 | lswap == 63 | | So it looks like SwapLen[lswap] isn't being set properly when | 'Supress Redundant Loads' is on. | | | | | ============================================================================ | | Mon, Jun 07, 2004 - 1:35:11 pm | | ray> | Joe, | | It doesn't matter anymore, since Michal has bagged this -- it all being | related to that compiler bug. | | | ============================================================================ | | Tue, Jun 08, 2004 - 1:59:05 am | | Joe> | Cool. | | ============================================================================ | | Wed, Jun 09, 2004 - 4:21:35 pm | | ray> | oh-kay, here we go with Watcom .... | | | | | ============================================================================ | | Wed, Jun 09, 2004 - 5:41:22 pm | | ray> | Damnation, | | I can handle the windows install, but then find out that | all the help is in .pdf format !@#$%^&* | | WHY do people do this? | WHY do they make things so blasted difficult? | | I looked for text versions with no luck. Do any of us | have such a thing? | | | ============================================================================ | | Wed, Jun 09, 2004 - 7:39:41 pm | | little_birdie> | | 2,272 4-23-01 1:46p c:\pdf2htm\pdf2htm1\argh.exe | 207 4-23-01 1:46p c:\pdf2htm\pdf2htm1\argh.pas | 2,512 4-23-01 1:34p c:\pdf2htm\pdf2htm1\htmlgen.exe | 423 4-23-01 1:34p c:\pdf2htm\pdf2htm1\htmlgen.pas | 240 8-17-01 8:49p c:\pdf2htm\pdf2htm1\pdf2htm.bat | 658 4-24-01 4:20p c:\pdf2htm\pdf2htm1\readme | 2,288 4-24-01 8:56p c:\pdf2htm\pdf2htm1.fix\argh.exe | 220 4-24-01 8:56p c:\pdf2htm\pdf2htm1.fix\argh.pas | 2,592 4-24-01 8:54p c:\pdf2htm\pdf2htm1.fix\htmlgen.exe | 469 4-24-01 8:54p c:\pdf2htm\pdf2htm1.fix\htmlgen.pas | 224 4-25-01 7:33p c:\pdf2htm\pdf2htm1.fix\pdf2htm.bat | 658 4-24-01 4:20p c:\pdf2htm\pdf2htm1.fix\readme | 393 4-24-01 9:09p c:\pdf2htm\pdf2htm1.fix\readme2 | | 3,616 10-28-01 1:35p c:\pdf2htm\pdf2htm2\argh.exe | 3,920 10-31-01 10:57a c:\pdf2htm\pdf2htm2\htmlgen.exe | 244 2-21-03 9:38p c:\pdf2htm\pdf2htm2\pdf2htm.bat | 55 11-05-02 6:59p c:\pdf2htm\pdf2htm2\pdf2htm.ini | | 3,824 11-19-01 6:56p c:\pdf2htm\pdf2htm3\argh.exe | 4,384 11-19-01 6:57p c:\pdf2htm\pdf2htm3\htmlgen.exe | 244 11-02-01 7:06p c:\pdf2htm\pdf2htm3\pdf2htm.bat | 2,708 11-21-01 12:12p c:\pdf2htm\pdf2htm3\pdf2htm.doc | 55 11-05-02 6:59p c:\pdf2htm\pdf2htm3\pdf2htm.ini | | 3,824 11-19-01 6:56p c:\pdf2htm\pdf2htm4\argh.exe | 9,520 2-13-03 10:49p c:\pdf2htm\pdf2htm4\htmlgen.exe | 366 2-27-03 6:42p c:\pdf2htm\pdf2htm4\pdf2htm.bat | 55 11-05-02 6:59p c:\pdf2htm\pdf2htm4\pdf2htm.ini | 2,963 2-13-03 11:05p c:\pdf2htm\pdf2htm4\pdf2htm.txt | 80 2-13-03 11:05p c:\pdf2htm\pdf2htm4\whatsnew.txt | | 3,824 11-19-01 6:56p c:\pdf2htm\pdf2htm5\argh.exe | 9,760 7-13-03 10:54a c:\pdf2htm\pdf2htm5\htmlgen.exe | 373 3-30-04 6:59p c:\pdf2htm\pdf2htm5\pdf2htm.bat | 2,800 7-13-03 11:04a c:\pdf2htm\pdf2htm5\pdf2htm.doc | 3,168 5-12-03 4:33p c:\pdf2htm\pdf2htm5\pdf2htm.dok | 55 11-05-02 6:59p c:\pdf2htm\pdf2htm5\pdf2htm.ini | | --- from mime.cfg --- | | [glennmcc stuff] | | file/.pdf >HTM|@call c:\\pdf2htm\\pdf2htm5\\pdf2htm.bat $1 $2 | | ______________________ | | ============================================================================ | | Wed, Jun 09, 2004 - 8:24:51 pm | | Joe> | I agree with Glenn, you *should* have PDF capabilities in DOS, Ray. | I always try Acrobat 1.0 (try to find the "Text Utilities" directory | of your favourite Simtel mirror) first, because it's the fastest | option, particularly for large documents. If that fails, then I use | Arachne (in concert with PDF2HTM and GS7.05). I started writing a | How-To document about PDF in DOS - perhaps I should finish it some day. | | | ============================================================================ | | Wed, Jun 09, 2004 - 9:24:03 pm | | RAY> | Joe, | | I've got a converter, it's just bugs me that I need to use it, and | the formating ain't perfect. It looks like the docs I have are from | the last comercial version (11), but they do apear to be well written | and complete. This looks like a very capable compiler, what do you | think? Perhaps it's a candidate to compete with DJGPP for a | DOS32 port? I sure like the idea of being able to produce a | 16 bit and a 32 bit version in the same environment if that turns | out to be possible. | | | Glenn, | | God knows what you're trying to tell me. | | | ============================================================================ | | Wed, Jun 09, 2004 - 10:36:28 pm | | glennmcc> | Oh, nuttin' special. | | Just the same thing that Joe just said......... | | Arachne + PDF2HTM + GS == 'single click' PDF viewer for DOS :)) | | ============================================================================ | | Thu, Jun 10, 2004 - 3:29:41 pm | | mht> | Ray, | | I think that all information you may need in Watcom is available | under Windows in standard Windows help format (if you installed | the Windows-based compiler and IDE) and also under DOS (if you | installed the DOS-based compiler) through WHELP.EXE (a full | screen Watcom help viewer; the DOS help files are in their own | specific format). | | Why people use PDF? It is portable (can be read on virtually all | platforms with tools available for free), internally compressed | and (unlike HTML) already formatted, so it looks always (well, | almost) as desired. It's not always the best choice, I agree, but | at least it is a good alternative for MS Word .DOC files. | | | | ============================================================================ | | Thu, Jun 10, 2004 - 4:32:21 pm | | ray> | Michal, | | Thanks for that. I didn't install the W compiler and with the | rest it's a catch 22, because I need to read the PDF to | find out about whelp.exe :-< | | Anyway it's not that I object to PDF, I know that it has many | uses, but IMHO, there should _always_ be plain text help files | available in adition to whatever else is there. But I admit I am | a fanatic about that; I like a text file that I can edit and | search through using normal DOS search tools. | | I'll probably be bugging you quite a bit in the next while as I try to | figure this Watcom out -- be prepared ;-) | | Glenn, | | Yes, I recall that Arachne can view PDF, now that you mention it, but | my desire it to convert, not to view, being the text hard-liner that | I am. | | | ============================================================================ | | Thu, Jun 10, 2004 - 5:50:34 pm | URL | | little_birdie> | http://browser.arachne.cz/apm/xpdf091.apm | | ============================================================================ | | Thu, Jun 10, 2004 - 5:53:53 pm | | little_birdie> | | file/.pdf >TXT|@c:\\xpdfdos\\pdftotex.exe -q $1 $2 | application/pdf >TXT|@c:\\xpdfdos\\pdftotex.exe -q $1 $2 | | Then hit F2 to save the resulting converted somefile.PDF as somefile.TXT | | | | ============================================================================ | | Thu, Jun 10, 2004 - 9:16:08 pm | | ray> | Why thanks, that looks like just the sort of thing a dude might want | in this situation. I've never loaded an APM, this should be fun. | | Except for one thing ... I just found out that the Watcom IDE only | works under Windows :( ... don't know if I've got the stomach for that. | Sadists -- making you run Windows to write a DOS program -- it ain't | descent. | | | ============================================================================ | | Fri, Jun 11, 2004 - 3:21:09 am | | Joe> | Hmmm ... Borland did the same Cr*p with BC++ 4.XX, | you only had a Windoze IDE, even for compiling DOS | app's :-( | | ============================================================================ | | Fri, Jun 11, 2004 - 3:23:02 am | | Joe> | Oh, BTW, | | XPDF is now at version 3.0 (last time I checked;-). | If you're ever bored, Ray, you might try your hand | at making a new APM ... | | | | ============================================================================ | | Fri, Jun 11, 2004 - 7:13:53 am | | ray> | Yes, the Empire is everywhere. Oh, well there's still DJGPP, the | last of the brave. I once scored a copy of BC4 which I took home with | the greatest glee only to find out the awful truth when I tried to | instal it. I was so PO'd that I erased all the disks :-( | | | | ============================================================================ | | Fri, Jun 11, 2004 - 5:37:02 pm | | glennmcc> | Hooo Raaaa !!!! | | That is EXACTLY what those disks deserved. | | ============================================================================ | | Sat, Jun 12, 2004 - 2:21:15 am | | mht> | Ray, | | Why do you need another IDE? TC/BC IDE is pretty universal, if you | don't want to work with command-line tools directly. | | You can add a new tool under Options|Transfer and assign a hotkey | to it. In the past, I was using Turbo Pascal IDE with one of | Fortran compilers (Microway NDP) this way; I even wrote a message | filter for it, so I could browse the errors using IDE's Message | window. Later I adopted the TP IDE to work with TeX and LaTeX. | | Now I can see that TC/BC IDE is even more flexible: you can mark | an external tool as a translator, and select it in individual file | options (in Project window, highlight file name and press Ctrl+O) | -- now the only available external translator is Turbo Assembler, | but I hope that Watcom C or C++ can be added as well. | | Or, one can create a makefile for Watcom and just install WMAKE | as an external tool. TC/BC IDE will then serve just as a | multi-window editor with C syntax highlighting then (which is, | I guess, the functionality that you need/like the most). | | | | ============================================================================ | | Sat, Jun 12, 2004 - 7:23:14 am | | ray> | Michal, | | That is most interesting about the BC IDE, I did not know that you | could use it with another compiler. I have no documentation for it, so | I learn everything by trial and error, or from more advanced users like | you or the others. You are right -- being able to | debug, including highlighting, is the most important thing. I like | command line tools best, but I think that trying to port everything to | Watcom is liable to produce so many errors that a native Watcom | IDE in DOS would have been very nice. I will follow your sugestion, | and maybe I will even bite my lip and install the blasted Windows | IDE (don't tell Glenn!) | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:05:33 am | | ray> | M, | | I checked out that transfer feature you mentioned, it looks like it | will be very useful once I figure out how it works -- thanks for that. | | BTW, in 'misc.c' line c.732/B3 the array 'long diskspace[27]' is | explicitly initialized to zeros. Is this needed? -- it is an external | array, so it must be initialized to zeros by default, no? | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:14:18 am | | ray> | ... and one more thing: | | All, | | OK, so our 'external external' variables now all start with 'g'. But what | about the 'local external' variables? -- ie variables external to | any function, but only used within a given file? By the book, these | are 'external static' variables. Do they get the 'g'? Should I | mark them 'static'? -- doing so doesn't seem to change anything so I | don't think there's any point except for documentation, which is a good | thing in itself. I'm neutral on this, so two votes take it. | | | | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:14:37 am | | mht> | Ray, | | I have exactly the same documentation on the BC IDE as you (i.e., | F1 key), but my experience with TP7 IDE, which is very similar, | helps me very much. | | My experience with Watcom IDE under Windows is limited to Fortran | programs. I haven't used it too much, mainly to see how it works | before installing it on WinXP in our students' computer lab. Even | on those machines, I prefer MS Edit (10x better than the windowed | Notepad) in a full-screen NTDOS session and the command-line | Watcom compiler/linker. So I cannot tell you whether it is really | worth using, particularly when building DOS applications. | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:26:33 am | | mht> | I think that the explicit 'static' (and 'extern') declarations, not | only for variables, but also for functions, may be useful to reduce | the number of exported symbols, therefore simplifying linker's job. | | BTW, the OpenWatcom C documentation contains also a decent C language | guide with examples. | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:53:28 am | | mht> | About 'diskspace': it must be initialized to 0 because 0 was chosen | to mean 'unknown' (the side effect is, that if the disk was full | during the previous free space query, it will be examined again). | | The standard says that 'static' and 'extern' variables are initialized | to 0 by default (while 'auto' and 'register' are undefined). BC | runtime library in fact contains a piece of code which fills the | portion of memory occupied by uninitialized data with zeros (in | 'huge' model it seems to be done differently). So it seems that | you can have all the 27 redundant eggs (0's) for breakfast ;-) | | | | ============================================================================ | | Sat, Jun 12, 2004 - 10:32:50 am | | ray> | Michal, | | Hmmm, going to 'diskspace[27];' seems to work ok (freespace is | reported correctly), but the .exe increases by 16bytes, which seems | strange. | | I like what you say about 'static' -- not only is it good documentation, | but maybe it would make things easier for the linker too. I think I'll | do it unless there is an objection. But I think that 'extern' | will not have the same effect. Where it is required it is | required, but when it is added elsewhere it is just documentation. | | | ============================================================================ | | Sat, Jun 12, 2004 - 11:19:12 am | | ray> | M, | | Well, there was another pointless initialization of an external in | 'misc.c': "long gScreenSaver = 0L;" , and when I removed that | initialization as well as the one for 'diskspace[27]' the .exe went back | to it's proper size, so now I can have 28 eggs for breakfast ;-) | | | ============================================================================ | | Sat, Jun 12, 2004 - 2:57:59 pm | | mht> | This kind of optimizations (moving variables from the initialized data | segment into uninitialized one, i.e., from _DATA to _BSS), | unfortunately, only reduces .EXE size in case of non-overlaid | applications. In case of overlaid ones, the linker puts all 0s from | _BSS into .EXE anyway, because(?) overlaid code segments are placed | after _BSS and _STACK. That makes over 34000 'eggs'. It would be nice | to find a way to 'eat' them, particularly that overlaid .EXEs cannot | be compressed by PKLite, UPX et al. | | | | ============================================================================ | | Sat, Jun 12, 2004 - 3:21:41 pm | | r> | Michal, | | OK. Anyway, I'm happy to break even on code size with this, but | when it increased, that bothered me. So what's your oppinion on | 'g' in front of static external variables? ... or maybe 'e'? | | | ============================================================================ | | Sat, Jun 12, 2004 - 4:32:55 pm | | r> | testing | | ============================================================================ | | Sat, Jun 12, 2004 - 4:36:01 pm | | r> | All, | | Except for several in the libraries, this is the one and only | typedef for a structure in the project. I hate this sort of | thing because it creates confusion for no reason at all. I propose | just naming the structure "EntryGIF" and using it like all the | other structures. Typical Haro. This sort of thing bugs the hell | out of me. | | typedef struct | { | unsigned int hPicInf; //CZECH handle na PicInfo gifu | unsigned int TimeAnim; //interval animace (v ms ?) | long NextAnim; //cas kdy spustit dalsi obrazek | } ENTRYGIF; | | | ============================================================================ | | Sat, Jun 12, 2004 - 4:37:01 pm | | r> | ... Damned thing looks like a macro ... | | | ============================================================================ | | Sat, Jun 12, 2004 - 7:55:58 pm | | ????> | I'll betcha that Ray can't do this. | _______ | | . . . | | | . . . | | | . . . | | |_______| | | Place pencil on paper | | Without lifting the pencil from the paper draw 4 straight lines to | connect all 9 dots. | | (where line1 ends line2 begins, line2 ends line3 begins, line3 ends | line4 begins, line4 ends where it touches the 9th dot) | | | ============================================================================ | | Sat, Jun 12, 2004 - 7:59:42 pm | | ????> | @#%*-HTML | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:15:26 pm | | ????> | Got it ? | | Now try 3 lines to connect all 16 dots on a 4x4 grid. | | | ============================================================================ | | Sat, Jun 12, 2004 - 8:59:21 pm | | ray> | ... ain't never been beat yet on a logic problem or puzzle. | | The 9 dots one is easy, but 3 lines to connect all the dots on | 4 x 4 grid? ... you aren't pulling my leg are ya? Please state | all the parameters of the puzzle: exactly what you *can* and *can't* | do. Also, is the 4 x 4 grid perfectly square? | | ============================================================================ | | Sat, Jun 12, 2004 - 9:33:01 pm | | ????> | Sorry, That should have read 3 lines on a 3x3 grid, not 4x4 | | | ============================================================================ | | Sat, Jun 12, 2004 - 9:34:42 pm | | ????> | 3 straight lines, that is. | | 3 curved lines on the 4x4 | | ============================================================================ | | Sat, Jun 12, 2004 - 9:35:37 pm | | ????> | 'stew' on it for a while... then I'll post the links to the solutions. | | ============================================================================ | | Sat, Jun 12, 2004 - 9:36:29 pm | | ????> | Oh yeah... | | Yes, All grids are perfectly square. | | | ============================================================================ | | Sat, Jun 12, 2004 - 9:40:42 pm | | ????> | http://www.NotGonnaTellYouYet.com/3x3.gif | http://www.NotGonnaTellYouYet.com/3x3-3.gif | http://www.NotGonnaTellYouYet.com/4x4-3.png | | ============================================================================ | | Sun, Jun 13, 2004 - 2:43:47 am | | mht> | Ray, | | I already asked this question: should we make typedefs for _all_ | structures, or _always_ write 'struct StructName'? Whatever we choose, | let's make it consistent. You seem to prefer 'struct StructName'. | A bit more typing in declarations, but maybe a bit more readable, | indeed. I have no strong preference about any of the solutions. | Glenn, Joe? | | Going back to 'eggs', I noticed that even a statically linked CORE.EXE | contains all the 0s from _BSS. Guess why? CORE.MAP will tell you. | | The guy who coded ZBITBYTE.ASM (in X_Lopif) instead of putting it into | a segment of class 'CODE', put it to a segment named 'CODE' which didn't | belong to any class. And the linker placed this segment after _BSS and | _STACK (and before all overlays in the overlaid version). | | Don't worry, it is already fixed (and the statically linked CORE.EXE | is noticeably shorter). But not only the segment declaration is | changed ;-) When I already touched this file, I couldn't resist and | reformatted it, translated comments, added new ones and partially | re-coded. It is now shorter and should also run faster, particularly | on 386 (and older) processors. | | | ============================================================================ | | Sun, Jun 13, 2004 - 8:50:08 am | | ray> | HMMMM, | | 3 x 3 grid. All dots touched using 3 line segments without lifting | the 'pen' (as in the 4 line version of the puzzle)? | | ... Can't be done, I sez! ... There's got to be an added liberty, | like being able to lift the pen, or something. | | | | ============================================================================ | | Sun, Jun 13, 2004 - 10:13:31 am | | mht> | Let us count: a single straight line can touch at most 3 points in the | 3 x 3 grid. In order to not touch the same dots, these 9 /3 = 3 lines | must be parallel, therefore not joined (at least not in Euclidean | geometry). | | The 4 line case isn't particularly difficult (9 = 2 + 2 + 2 + 3). | | In the 4 x 4 case, what does a "curved line" mean? If a line can | be arbitrarily curved, why we need three when one is enough? | | BTW, who is "????" ? | | | ============================================================================ | | Sun, Jun 13, 2004 - 12:41:27 pm | | r> | Yes, Michal's analysis is correct, I'd say, and is close to a | formal proof that it can't be done in on a Euclidian plane. | I will commit: it can't be done. | !X€ä! | | | ============================================================================ | | Sun, Jun 13, 2004 - 1:24:51 pm | | mht> | But when you wrap the sheet of paper to form a cylinder, shifting | its edges a bit, you can do it with a single line (screwthread-like). | Of course, this another kind of geometry, where 'straight line' has | different meaning. | | | | ============================================================================ | | Sun, Jun 13, 2004 - 2:29:23 pm | | ????> | 3 curved lines = 3 arcs ... as in...... C C C | | Same 'rules' apply in all cases. | | 3x3 and 4x4 grids on flat sheets of paper lying flat on a table. | | Do not lift the pencil till done... do not move the paper in any way. | | Who is ???? | | Can't tell you yet. | | If I did......... | you would know the full URL of where I uploaded answers. | | ============================================================================ | | Sun, Jun 13, 2004 - 6:28:39 pm | | ray> | Ah, 3 'curved lines' that's different. I assume that these are | arcs, by the proper meaning of the term, ie constant radius? ... | Actualy that's obvious since a random curve would be to easy. | | Get back to you Glenn. | | | ============================================================================ | | Sun, Jun 13, 2004 - 6:31:14 pm | | ray> | Oh, can the radii of the arcs change between arcs, or must they | all be the same? | | | | ============================================================================ | | Sun, Jun 13, 2004 - 7:12:33 pm | | ????> | I ain't sayin' | | And who is Glenn ???? | | ============================================================================ | | Sun, Jun 13, 2004 - 7:24:20 pm | | ray> | ... ??? isn't Glenn?! | | ... would have bet money on it. | | | | ============================================================================ | | Mon, Jun 14, 2004 - 12:40:37 am | | mht> | 3 circular arcs on 4 x 4 grid -- done. | 3 circular arcs on 3 x 3 grid -- as well. | (I hope that self-crossing is allowed?) | | But 3 straight line segments on 3 x 3 -- still have no idea. | | | | ============================================================================ | | Mon, Jun 14, 2004 - 7:04:37 am | | ray> | Michal, | | Did you manage to do it with constant radius arcs? I've done it | with variable radius, but haven't tried with constant radius yet. | | | | ============================================================================ | | Mon, Jun 14, 2004 - 8:08:38 am | | mht> | Yes, all arcs have the same radius, namely a*sqrt(10)/2, where a is | the distance between nearest grid points. | | | ============================================================================ | | Mon, Jun 14, 2004 - 2:23:51 pm | | ray> | Very nice. The arcs do as much work with 4 x 4 as they do with | 3 x 3. I was surprised by the symetry of the answer, and by how | pretty it is. Thanks for that Joe. (My 2nd guess ;-) | | | | ============================================================================ | | Mon, Jun 14, 2004 - 5:18:26 pm | | ????> | Let me know when you want the full URLs to the answers. | | ============================================================================ | | Mon, Jun 14, 2004 - 5:18:48 pm | | ????> | Who's Joe ? | | ============================================================================ | | Mon, Jun 14, 2004 - 5:42:58 pm | | ray> | Not Joe ... I give up, the mystery is intractable. | | But no need to check on the answer. I use puzzles to teach logic and | thinking skills to students, and one of the things I tell them is | that no one 'owns' the answer to a puzzle, and no one needs to | approve their answers. They must progress to the point where they | *know* that the answer they have is correct. Once they have done that, | there is never any need to check. The one exception to this is that | sometimes an unexpected, new solution to an old problem pops up, so | these should be shared. | | So ... | | 4 men need to cross the street from one building to another. It is | raining. Between them they have one umbrella, which is big enough | to shelter two men. The first man can make the trip in one minute, | the second in two minutes, third in 5, the fourth in 10. | | Using only that umbrella as shelter, what is the fastest time to | get all four men to the other building? | | | | | ============================================================================ | | Mon, Jun 14, 2004 - 6:37:54 pm | | ????> | Still no solution for 3x3 with 3 straight lines ? | | ============================================================================ | | Tue, Jun 15, 2004 - 1:33:37 pm | | ray> | It can't be done, I says. Logicaly impossible. | | | ============================================================================ | | Tue, Jun 15, 2004 - 4:53:40 pm | | ????> | Yes, it can be done. | | Do you want to see it ? | | | | ============================================================================ | | Tue, Jun 15, 2004 - 5:18:57 pm | | ray> | Hmmmm, I'm tempted to say I'll eat my hat ... but my hat probably | wouldn't taste very good. This hasta be a case where the parameters | of the puzzle haven't been correctly understood. Either that, or | I've got more to learn about Euclidian planes than I realize ;-) | | ... sock it to me ... | | (Nuts, I've never been whiped before ... hope this isn't the first time) | | | ============================================================================ | | Tue, Jun 15, 2004 - 6:28:09 pm | | ????> | OK, here you go. | | http://www.cisnet.com/glennmcc/images/3x3.gif | http://www.cisnet.com/glennmcc/images/3x3-3.gif | http://www.cisnet.com/glennmcc/images/4x4-3.png | | re:"And who is Glenn ????" | | I never said he wasn't me. | | ============================================================================ | | Tue, Jun 15, 2004 - 6:32:39 pm | | glennmcc> | Also, none of the 'rules' ever said that you had to go through the | center of each dot. (simply that they had to be connected) | | | ============================================================================ | | Tue, Jun 15, 2004 - 8:31:56 pm | | ray> | F*O*U*L*! | | | | ============================================================================ | | Tue, Jun 15, 2004 - 8:39:17 pm | | glennmcc> | Gotcha' | | ============================================================================ | | Tue, Jun 15, 2004 - 8:41:58 pm | | ray> | Well, streaching the limits of the Marquis of Queensbury rules | on puzzles. Trickery, word games and such are not sporting. OTOH, | the whole point of puzzlecraft it to learn *exactly* what your | parameters are without making any unwaranted assumptions. I assumed | that we were dealing with 'points' but you said 'dots'. A point has | no size, but a dot can be as big as you want it to be. I queried | the exact nature of the grid, but not of its elements, which I | could have done, but didn't. | | OK, I loose on points -- but not by a knockout. | | | | | | ============================================================================ | | Tue, Jun 15, 2004 - 8:43:11 pm | | ray> | Animal! | | | ============================================================================ | | Tue, Jun 15, 2004 - 9:19:19 pm | | glennmcc> | Animal ???? | | Yep, that's me | | ============================================================================ | | Wed, Jun 16, 2004 - 4:50:19 pm | | ray> | I just figured out why we can't debug in the Borland IDE: With | debug information in the .exe, it's size is 780,000 :-( | | | ============================================================================ | | Wed, Jun 16, 2004 - 6:54:23 pm | | glennmcc> | OK, the file size is 780,000 bytes | | But how much memory does it require to run it ? | | ============================================================================ | | Wed, Jun 16, 2004 - 6:56:20 pm | | glennmcc> | As a 'prime example' of how file size does not equal memory needed. | | BC.EXE is 1.4 megs | | | | ============================================================================ | | Wed, Jun 16, 2004 - 9:53:22 pm | | ray> | BC.EXE runs under extended DOS, so there's no analog there, but | I take your point -- .exe size needn't reflect memory requirement. | In this case, though, I'd say the extra c. 300K of debuging code | would excede what's available to us by about twice, since at the | moment I've got 168+ free, thus she won't run -- but it's just | a guess. Joe and Michal will be able to comment with more | technical savy. | | | | ============================================================================ | | Thu, Jun 17, 2004 - 9:26:02 pm | | ray> | Nobody likes my puzzle :-( | | | | ============================================================================ | | Thu, Jun 17, 2004 - 9:46:53 pm | | Joe> | There is a small utility on Simtel and perhaps elsewhere called "minload". | This will tell you how much memory an application requires to load, but | of course, this won't includue any malloc'ed memory. Another utility, with | a different purpose but also able to give this information, is "unp411". | | I'd suggest using this on a known build of Arachne, then a debug build. | I expect the difference will be how much extra memory the debug build | requires, on the assumption that the malloc'ed stuff is unchanged. | | ============================================================================ | | Fri, Jun 18, 2004 - 7:19:39 am | | ray> | Crisp logic, Joe, I'll do it. | | | ============================================================================ | | Fri, Jun 18, 2004 - 12:51:27 pm | | ray> | Michal, | | Where have you gone? :-( | | | ============================================================================ | | Fri, Jun 18, 2004 - 6:20:21 pm | | ray> | Joe, | | I tried minload, as you suggested. With an .exe of 419,488, it | said 219,344 was needed; with debugging on, an .exe of 795,278 | was said to require 220,096. I'm not sure I like those numbers, | what do you think? | | BTW it looks like we've got a global structure and a local | structure (in main.c) both named (now) "sCacheItem" ! The local | one was found by one of my SRfilters, so it shared the name | of the global previously too. One nice thing about my renaming | adventures is that these things really jump out at you once you've | attempted to change the naming conventions for global vs. local | data. | | | ============================================================================ | | Sat, Jun 19, 2004 - 9:33:33 am | | mht> | Well, if you read ArachneDevelopment, you know where I was ;-) | | About the puzzles. Yes, it was a good example of unneeded assumptions, | which humans often make, particularly when they are biased somehow | (for example, by other puzzles given at the same time, which somehow | imply or just encourage such assumptions). | | Most mathematically-biased people with think 'dot' = 'point' instead | of 'dot' = 'circle with nonzero radius'. The funniest thing in the | puzzle is that the radius of the 'dot' can be arbitrarily small as | long as it is nonzero (and as long as your sheet of paper is big | enough to fit the turning points which quickly run away to infinity | when the dots get smaller). | | Ray, your puzzle also requires some assumptions. What is the time | needed by two people to travel that distance? (It is reasonable to | assume that it is just the time needed by the slower man -- the | puzzle is relatively easy then, it's enough to think which times | can be minimized and which cannot -- but it's not necessarily true.) | An example: one man needs 10 hours to dig a pit. How many time do | 10 men need? Answer: They will never finish, because they start | drinking beer instead of digging *g* | | About the memory limits for debugging. The key problem is, how much | memory is needed by the debugger itself (for its code and data) in | conventional memory (because a debugger can be an extended DOS | application as well -- as it is, I believe, in case of the integrated | debugger). The debug info from EXE file does not have to be loaded | into conventional memory. I believe that it doesn't even have to be | loaded as a whole (although at expense of debugger's performance). | Well, I haven't experimented with the IDE debugger, but I tried once | to track a particularly ugly piece of code in HDRAWBMP module under | command line DEBUG, and it worked (I didn't care about correct screen | switching). | | | | ============================================================================ | | Sat, Jun 19, 2004 - 9:37:30 am | | mht> | Strange, the debug info appended at the end of an EXE file should not | increase its memory requirements. It's just for a debugger, you should | be able to strip it out without affecting the program itself, I'd say, | but I cannot be sure. | | | ============================================================================ | | Sat, Jun 19, 2004 - 11:46:14 am | | ray> | Michal, | | Well, it looks like the module that is causing the black areas | with 'assume no pointer aliasing' on is 'config.c' -- not one | I would have suspected. | | | ============================================================================ | | Tue, Jun 22, 2004 - 7:54:03 pm | | ray> | Hacking away at 'config.c' and .exe now 418,912. I figure that at | the rate we're optimizing things, we'll have the .exe down to | 400,000 easy within the year. | | | | ============================================================================ | | Tue, Jun 22, 2004 - 10:02:10 pm | | Joe> | Hi Ray, | | And does you 'config.c' hacking change the "minload" number as well? | | ============================================================================ | | Tue, Jun 22, 2004 - 10:13:01 pm | | ray> | huh? ... don't recall that variable, but I haven't changed anything | like that anyway. I'll post what I've done in a few days for | general trashing. I must say, though that there was a whole lot of | sloppy stuff in that file, Michal agrees. It seems to me that | the way Arachne configures herself at the moment is almost bizare -- | 'arachne.cfg' is consulted all over the place. It would seem to me | that 'arachne.cfg' should be read once, right through, at the | beginning of a session and from then on, values should be read from | the configuration structure. | | | ============================================================================ | | Tue, Jun 22, 2004 - 10:15:32 pm | | ray> | OH, forgot to say: "More of the Devil finding work for idle hands" | , Joe. ;-] | | | | ============================================================================ | | Wed, Jun 23, 2004 - 1:04:50 am | | Joe> | Ray, | | Uh .... you've forgotten the "minload" utility already??? | | ============================================================================ | | Wed, Jun 23, 2004 - 1:12:47 am | | Joe> | Also ... there is nothing bizarre in Arachne reading the config stuff | and consulting it as needed. AFAIK, it doesn't do this repeatedly, eg. | in a loop, so doesn't really slow down as a result (compared to | constructing a data structure and looking this up instead). | | Also, note that Arachne holds the config file contents in memory "in | full", including the comments, so that it can rewrite the config file | if required, retaining the comments. To update the config file from | a data structure (retaining comments) would be more complicated ... | | | ============================================================================ | | Wed, Jun 23, 2004 - 7:33:45 am | | ray> | OOOOOhhhhh, *that* minload! ... I'll check. | | Yeah, one might prefer the 'consult as needed aproach' but (on the | most preliminary and general of grounds) I'd rather focus all | that stuff in one place ... read 'arachne.cfg' and then forget it. | Much too soon to do anything of the kind, though -- just | musing. | | | | | | | ============================================================================ | | Wed, Jun 23, 2004 - 1:02:43 pm | | ray> | Joe, | | Minload reports a savings of 16 bytes (219,200 vs. 219,216) -- one | sees clearly how, in an overlayed module, what matters most isn't | code complexity (though smaller is still better), but volume of | global data. In this case, I found two unused structure elements and | put them on ice. | | | ============================================================================ | | Wed, Jun 23, 2004 - 6:11:33 pm | | ray> | Glenn, | | Farting around in 'config.c' I noticed that your improvements are | processed as: "... toupper(*value == 'Y')" shouldn't that be: | "... toupper(*value) == 'Y" ? | | There's a whole bunch of other stuff I'd like to discuss about that | file, but I'l like your feedback on this first. | | | ============================================================================ | | Wed, Jun 23, 2004 - 7:27:56 pm | | glennmcc> | Change it ..... see what happens. | | | ============================================================================ | | Wed, Jun 23, 2004 - 7:44:06 pm | | glennmcc> | You are 100% correct. | | I just changed all of them from | | toupper(*value=='Y')) | | to | | toupper(*value)=='Y') | | ___________ | | | Good catch, Ray. | | Thank you. | | ============================================================================ | | Wed, Jun 23, 2004 - 7:44:55 pm | | ray> | OK, I'll try it. I'm sure you're up to something there, but I don't | know what it is. | | | ============================================================================ | | Wed, Jun 23, 2004 - 7:53:09 pm | | ray> | Ooops, we were both writing at the same time -- scratch that last | post, I you like the change, it stays, obviously. | | Next question: Some of the options have range checking code, but | most don't. Personaly (and typicaly of me) I don't like range | checking. I prefer solid documentation so that the user has | full information on both ranges/options and on the defaults for | each and every config. option and variable. But, if there is | to be such checking, I hate the fact that it fixes the out of range | value without letting you know you've made a mistake. Also, it | there is checking, it should be done for everyting, not just | a few select values. What do you think? | | | | ============================================================================ | | Wed, Jun 23, 2004 - 8:00:23 pm | | glennmcc> | ?????? | | Give me an example. | | Maybe THEN I'll understand what you're talking about. | | ============================================================================ | | Wed, Jun 23, 2004 - 9:45:55 pm | | ray> | I'll send it via the list (so it formats accurately). | | | ============================================================================ | | Thu, Jun 24, 2004 - 6:26:19 pm | | ray> | Glenn, | | So what do you think? Status quo? More range checking? No range | checking? | 6 ÿ! | BTW, did I have fun today: The function 'ConfigVariable' is called | 137 times. It takes a structure argument, but for all but one time, | the structure is 'sArachneCfg'. So I cut out the structure argument | and insted created a structure pointer that defaults to 'sArachneCfg' | and use that pointer inside the function. For the one and only | use of the function with 'sToolbarCfg' I just reasign the | pointer to that structure. Bottom line is a savings of 640 bytes. | | | Joe, get me that code before I run amok < G G G > | | | ============================================================================ | | Thu, Jun 24, 2004 - 7:16:40 pm | | glennmcc> | What's with this crap ??? | | 'sArachneCfg' and 'sToolbarCfg' ??? | | You still don't get it..... do you? | | Do you not care what we say anymore ???? | | Joe and I both already told you. | | 'g' prefixed to global variables is fine. | | All other prefixes that you suggested are not fine. | | ============================================================================ | | Thu, Jun 24, 2004 - 8:51:01 pm | | Joe> | Hi Ray, et. al. | | Well, I have some good news and some bad news. | | The good news is that I have my computer issues essentially sorted out | and am able to merge my stuff into B3 as time permits (damn these short | winter days!). | | The bad news is that the "knobbled" 'ifdef' stuff is a mess! I've started | with 'arachne.h' and find that the POSIX stuff has been "knobbled", along | with mismatched 'else' and 'endif' statements, many commented out and/or | attributed to incorrect 'ifdef' statements. Arghhh!!! | | Ray, you know that I don't agree with killing-off the POSIX stuff. | Furthermore, you have knobbled the partially-implemented JS stuff, which | is something you've never discussed. | | Remember right at the outset I said that changes should be constrained, | so that it doesn't become impossible to see what's changed? Well, the | same applies for trying to merge the work of other people into a common | code base, one has to resist the temptation to simply change everything, | else this task becomes more difficult than necessary. | | So Ray, could you please fix the POSIX and JS conditionals, then provide | a version of the B3 code that is a bit more compatible with other people's | code? I realize that B4 is your "plaything" and you can be as radical as | you like with your changes there, but I thought B3 was supposed to be | the basis for a new common code set, so should not include changes that | haven't been agreed to. | | I hope I don't sound too harsh here (I've used this forum rather than | the list, to keep things semi-private) but I want to make sure you | understand my perspective on this. | | Joe. | | | ============================================================================ | | Fri, Jun 25, 2004 - 1:09:31 pm | | ray> | Joe, | | Further to my last post. It occured to me that this 'to comment or | not to comment the conditionals' question isn't something that | really needs to be resolved. In the event that the others | agree with me that they should say commented, there's still no | reason why I can't make an uncommented version for you -- it's a | couple of hours of work, but if that's what you want, I'd be happy | to oblige (especialy since I'll be getting your code in return ;-) | I think this is one of those things where everyone can have what they | want. | | | | | ============================================================================ | | Sun, Jun 27, 2004 - 5:11:31 pm | | glennmcc> | Gregy, Gregy..... where for art thou Gregy ? | | ============================================================================ | | Sun, Jun 27, 2004 - 8:40:01 pm | | ray> | Glenn, | | On the general list I noticed that you've pulled in Michal's fix | of that 'fclose' problem in Insight(can't remember the number). | Is there anything else new since 1.75? If not I'll just ammend | the code myself, else I'll download the latest version. | | | ============================================================================ | | Sun, Jun 27, 2004 - 9:29:35 pm | URL | | glennmcc> | Hear ye, hear ye............. Read all about it. ;-) | | | ============================================================================ | | Sun, Jun 27, 2004 - 9:48:14 pm | | ray> | ... should have said "anything new in insight.exe ..." nevermind, | I'll grab it. | | ============================================================================ | | Mon, Jun 28, 2004 - 2:06:48 am | | Joe> | Greggy is AWOL (tisk! tisk!) ;-) | | ============================================================================ | | Mon, Jun 28, 2004 - 7:20:48 pm | | ray> | I say if Sgt. Feig doesn't report for duty soon, we should bust | him down to corporal ;-) | | | ============================================================================ | | Mon, Jun 28, 2004 - 7:25:48 pm | | ray> | BTW, Glenn, you never commented on my inquiery into the | fact that in 'config.c' some configuration options are | range checked and some are not. Whatever is decided, shouldn't | we be consistent with all options? IIRC, Joe came down in favour | of more checking. I'd cut it all out, but then again I tend to be | rather extreme on such matters, so I'll just get my strait jacket on | and wait for more input on this subject. | | | ============================================================================ | | Mon, Jun 28, 2004 - 9:18:47 pm | | ray> | Joe, | | BASE3a is done, build all check confirms no compile errors. | I'll upload it tommorow. Be advised that command line resusitation | of conditionals won't be 100% perfect, ie there could be some | *inactive* conditional code that remains commented, tho the | conditional statements themselves have been revived with near 100% | acuracy. The reason for the former is that some conditional block were | commented using /* */and some using | | //#ifdef POSIX | //blah; | //blah; | //#endif | | There should be few if any missed /* */blocks, but | uncommenting the working code in other style needed to be done visualy, | so there could be oversights. Also, remember that some blocks of | conditional code were commented out in the original sources. | Any and all errors can be confirmed with a simple visual check | against B0. If you find any errors please let me know. | | | | | ============================================================================ | | Mon, Jun 28, 2004 - 9:38:34 pm | | Joe> | Thanks Ray, | | It will be good to finally integrate everything - a common base from | which it will be easier for the various contributors to enhance the | code into the future. | | BTW, Christof said he may have time in July (we're nearly there:-) | to do some more translations for us ... | | | ============================================================================ | | Tue, Jun 29, 2004 - 7:06:08 am | | ray> | Yes, as far as I'm conserned, once Christof's work has been incorporated | into the cleaned code, she's done. | | | ============================================================================ | | Tue, Jun 29, 2004 - 12:30:26 pm | | ray> | Joe, | | Forgot to mention yesterday, don't forget that with B3a you need to | have the compiler defines present. In B3 no defines were needed since | all the conditionals were inactive. Thusly you'll have to edit | the project file accordingly. | | | ============================================================================ | | Tue, Jun 29, 2004 - 4:05:45 pm | | ray> | Joe, | | base3a.zip uploaded. | | | ============================================================================ | | Wed, Jun 30, 2004 - 2:14:23 am | | Joe> | OK Ray, I'll pick up the ZIP shortly ... | | ============================================================================