So far experiments continue with SWAT 4 performance issues. Deeper testing has shown that it is no longer connected to graphical issues, not when running on my current hardware/driver config; nice to be able to max out the graphics online *and* in single player.

What happens is periodically when moving through an area, I get a stutter-lag-warp like motion: as if the whole game stopped spinning and then suddenly unlocked. The only consistency I’ve noticed is it happens when entering a region of the map that I have not been in previously—or have not been in for a while. One thought is that perhaps it occurs when the cache must be updated with stuff that has already been moved out of the games memory cache. My machine has RAM to burn so I have been testing the game with various cache sizes, but don’t honestly expect any positive result. On modern machines, cache size shouldn’t matter to much with the Unreal Engine 2.x lol.

Atm I’m defragging a few disks, maybe that might help a little. I don’t know if it is just the much greater frequency of crashes with Windows XP, or that NTFS really sucks that much worse then FreeBSDs UFS2 system. But for one reason or another, my windows file systems always end up very highly fragmented. Although on the upside, unlike Win32: FreeBSD does kind of encourage you to fsck afterwards hehe.

Hopefully my experiments will yield some fruit, and I can stop warping all over the place lol.

Goodbye toe, hello pancake!

Ok, so far my toe has been slammed into a couch and healed… then slammed into a step at work, and healed improperly. Last week I showed it to an acquaintance who is a nurse, and she came to the same conclusion I had – time to see a doctor (and have the dead tissue removed).

This morning when getting ready to leave for work, 12 hard cover books fell off the table and landed on the same damn toe lol. I’m lucky they weren’t novels 350-450pg thick, or there wouldn’t be a foot left let along a toe! No serious damage added, if there is actually anything more to damage… just a bit of blood flow. Cleaned it up and threw a bandaid on it before heading out the door, it likely stopped bleeding by the time we got to work.

In some ways, I think I now will look at Spaceballs with an extra chuckle: whenever Barfs foot gets crushed under a Yogurts statue…

Haven’t been updating my LJ much this week, as usual that means either I am highly depressed or extremely busy, and often both lol.

This week that has started also promises to be a very hard and busy one as well :-(.

The upside is Operation Redeemer may be moving ahead soon……

Rcent business

As much as I hate to not be working, I am kind of happy about this recent turn of events.

Yesterday the after work down-time was interrupted with a job interview: one that I’ve had apprehensive thoughts about, in regard to Operation Redeemer. We didn’t get it and apparently, my remarks about “32 hours” and needing 12 people to do the job, “Queered it” as H.R.P. put it. I also reminded my mother that she should be careful what she wishes for, since she had asked me to speak up! For better or worse, I prefer to speak honestly and don’t like to mince words. Also on the flip side, we got something else (and less painful).

Thursday was supposed to be a trial-run, in which I have wondered just how much stuff could be done in 6 hours of labour. The place is so big, to clear it from a SWAT point of view, would take 20 men and at least 5 minutes. Cleaning the place as a 2-schmuck team would take all week! It is just to freaking BIG.

As I often say, things always balance out in the end. The 2 jobs that virtually evaporated have also come back online in force, and after yesterdays interview, H.R.P. is most certainly less inclined to whine about them lol. For me, work is work; that’s roughly all there is to it. Although that being said, I would love to have a career that I can wake up in the morning and actually want to do the job :-/. (Ok, so a crazy spider can dream…)

The positive side is that

In sleeping on it and having a job, that frankly leaves my mind free: I’ve come up with an idea for the tpsh problem.

The tokenizer is beautiful, the only problem is it does the expansions through a table of call backs. Now if I was to modify that so that it instead attaches meta-data to each token instead, those expansions could be delayed until later without major redesign. It will be necessary to redactor the lexer in order to handle the change in data structure. The code generator can then be tasked with completing any expansions during generation, by expanding lexemes to corrisponding code as it goes. After wards, re do the code generate into something more elegant and voila…. we have what it should’ve been in the first place!

A good nights sleep always helps the code[r]

A small shoot yourself in the foot, coders moment.

Being bored and lacking further ops I can get done before bed, I picked up on tpsh again. In look for a quick challenge, I noted that the git repo was still on the ‘codegen’ branch. Basically, a branch to test the idea of generating the execution code on the fly per command sequence.

As a quickie of interest, I picked up the generation phase for the for-loop. Then I hit a road block. Since my shell expands variables, globs, and aliases quickly during tokenization. The reason being, the input field separator ($IFS) and quoting rules determine how this shell splits text into ‘words’ or tokens for the execution mechanisms—you could say it’s “On the way there”, thus deals with it as it comes. Currently tpsh handles environment variables by fouling around with the programs own idea of the referenced environment variables (%ENV) without any distinction between exported and unexported variables. My intentions have been to use a more controllable interface for shell variables at a later date, since it is kind of a low-yield concern at this stage of development.

I see several choices:

a/ redesign how things work (obviously this is the whole story, lol), saving the issue until later when other components have matured to match.

b/ leave expanding environment variables (etc) until the last minute, I don’t like this idea.

c/ have some way of retaining things that can not be confirmed until later, with an indicator to strip out or expand the remainders at the last minute (this gives me visions of ugly code)

d/ incorporate the code generator closer into the process, so that things get expanded only after they have been confirmed, but generated as soon as possible (a more multiple pass focused design comes to mind).

a is basically a worry-later, and see if other things that needs doing either fix or exacerbate the problem (this is a two edged flaming sword). b is possible but would take a lot of reworking crap, and IMHO result in an ugly LA phase and become prone to introducing bugs into the final results. c sounds simple enough at first glance but I do not see a method that I’m willing to live with. I worry about how easy d would could confuse readers, and what danger a slip up on it could do the results.

For now, I intend to not worry about the minor issue, until after variable handling matures. Because I really love how expand_quotes() works, and that is the best part of the whole program IMHO. Needless to say, tpsh has poor handling of shell/environment variables and has had it throughout its development, since growing the code can wait longer then the other parts.

Not to mention the fact that tpsh has mostly been developed under sleep deprivation in the first place…. lol


In the time it took to submit the entry, type ‘shutdown -p now’, put away the computer, and take a quick leak: I came up with another solution. Give the code that expands variables an understanding of how they are defined, rather then only how they are referenced. Not only would checking if a referenced variable was just defined in the same set of input work with ‘for X’ and ‘for X in …’ like constructs, it could also be used to implement the ‘VAR=… … command …’ syntax at a later stage 🙂

The way expand_quotes() invokes the other expand_* procedures, we would need adjustment before the syntax of prefixing commands with variable settings could work, yet implementing the for-loop in it would be trivial, since anything that would cause the statement to get broken into an unusable token set before defining said variable and attempting variable expansion on it, would also be a usage that gets around for’s keyword status!

Problem solved with less fuss, maybe? It is amazing what you can think of while taking a piss!

More [SAS] Dept. of Agriculture

My work on the ‘[SAS] Dept. of Agriculture’ is nearly done, I have only 3 rooms left to do major work on, plus the “special” insertions hehe.

The goal is to be able to use the fire escapes outside the records room to gain entrance, replacing one of the spawn points. I may also modify the front-entrance spawn, so that the team spawns “outside” in a armoury room rather then the reception area. The building is supposed to be a mock-up for a hostage rescue after all, not purely a traditional map: so it wouldn’t be a big realism problem :-P.

Alcomplishing those aims appears to be easier then I expected. The real challenge at the moment, is I very much would like to erect breachable “Barricades”, that will have to be shoved out of the way. Getting that working so far has been of no real luck.

Today I woke up feeling like microwaved crap and a headache to match; you have a pulse, you report for work—that’s the way it is.

The thing that really cheered me up today, was my roughly annual periodic weigh in. Last year it was like 180~182 lbs (~82kg), today the scale read 160 lbs (~72.575kg) which is a much more comfortable range for me… lol. I’ve never wanted to go much past 180, and for much of the last decade, have been gaining around 10lbs (4.5kg) a year.

What’s changed between today and the last time I set foot on a scale? Not a whole lot really, the real food in my diet is likely worse on calories then ever before; but I have largely cut out junk food and snacks. When I do snack, it is usually something healthy like a bowl of Special-K or a banana. That being said, I only eat about 2 meals a day lol.

For virtually my entire life I’ve only had soda as my staple drink, usually about 1 litre a day. In 2008, I basically switched totally to drinking water at roughly 1 1/4 to 1 2/3 litres a day.

When it comes to exercise, I basically get none outside of work and walking the dog. The last several years have had my room used for storage and laundry racks, resulting in a bogus amount of space—being cooped up in this hellhole doesn’t help either. Who knows, maybe misery and depression are a better form of weight loss then diet and exercise… :-/. If this toe ever gets back to a suitable point, that I can accomplish reverse lunges without stumbling, I can start exercising. Moving things around and systematically pushing crap out, has helped double my effective free-space in my room…. and a major goal of Operation Redeemer is the freedom to GTFO of here periodically.

Normally I carry Willow out to where we walk, and occasionally let her walk the way home: if she will cooperate. Today, I told Willow that “You probably need the exercise more then I do”, and let her jog there. When it was time to come home, she looked at me with a nasty glint and decided we would jog home—and pooped out along the way! Hahahaha!

Who knows maybe Operation Redeemer would be good for my health, if family doesn’t chuck a spanner down its neck…..

Recently I have been thinking about 2 items on my bucket list. More specficially, the two most integer goals…

My thoughts on it haunt me, and the probability of ever seeing those core desires realized is an especially depressing thought. Those that know me fairly well, could likely hazard a few guesses at what those desires are, and hopefully get at least one right lol. I am wondering, even if I ever see them realized, will there be enough left of me, to furfil them? Alas, only time will tell that tale.

Time, such a precious commodity, like a grain of sand slipping through the neck of an hour glass Oh how I wish I could see my goals bear fruit…