Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Microsoft: Schools Fail to Teach Computing

0 views
Skip to first unread message

Roy Schestowitz

unread,
Mar 24, 2006, 12:48:38 PM3/24/06
to
,----[ Quote ]
| Schools and colleges are failing the next generation of scientists by
| not providing the computer skills they need to do the job, according
| to the scientists behind Microsoft Research's 2020 report.
`----

I will avoid flaming by making the remarks one begs for.

7

unread,
Mar 24, 2006, 2:17:00 PM3/24/06
to
Roy Schestowitz wrote:

Hmmm...

HANG THE BASTARDS!
HANG CLIPPY!
HANG THE BASTARDS!
HANG CLIPPY!
HANG THE BASTARDS!
HANG CLIPPY!


Roy Schestowitz

unread,
Mar 24, 2006, 2:20:55 PM3/24/06
to
__/ [ 7 ] on Friday 24 March 2006 19:17 \__

Actually, what I had in mind is the recurring criticism. Namely, schools that
teach students how to use packages like Photoshop and Office. In my
brother's school, they actually taught them ASP in Computer Science classes.
I protested to him, but being just 16 at the time, he was too young to have
his voice count among seniors whose knowledge is bound to nothing but
Windows (and possible an MSCE qualification).

B Gruff

unread,
Mar 24, 2006, 3:10:20 PM3/24/06
to
On Friday 24 March 2006 19:20 Roy Schestowitz wrote:

> Actually, what I had in mind is the recurring criticism. Namely, schools
> that teach students how to use packages like Photoshop and Office. In my
> brother's school, they actually taught them ASP in Computer Science
> classes. I protested to him, but being just 16 at the time, he was too
> young to have his voice count among seniors whose knowledge is bound to
> nothing but Windows (and possible an MSCE qualification).

ABSOLUTELY!

Around here, in schools, colleges and Adult Education, we have:-

Introduction to Computers = Howto use XP
Word Processing = Howto use MS Word
Spreadsheets = Howto use Excel
Presentations = Howto use Powerpoint
Internet = Howto use I.E. and Outlook Express
Graphics Design = Howto use Photoshop

... not forgetting Computer Security = Howto use Norton!

Roy Schestowitz

unread,
Mar 24, 2006, 3:16:18 PM3/24/06
to
__/ [ B Gruff ] on Friday 24 March 2006 20:10 \__


Prepare to hearing more stories like the following:

,----[ Quote ]
| I'm an art professor, and last semester I embarked on an exciting
| new adventure by erasing Mac OS X from nearly all of the Macintoshes
| in our digital media lab and installing Ubuntu in its place.
|
| I began seriously planning this change last school year, when I realized
| how fully the current feature sets of free software programs could
| satisfy the technical needs of the students in my classes. I decided
| that the time had come to teach our undergraduate art students about
| free software programs such as the GIMP, Scribus, and Quanta Plus,
| instead of proprietary programs such as Photoshop, QuarkXpress,
| and Dreamweaver.
`----

http://business.newsforge.com/business/06/03/09/2238246.shtml?tid=37

Over here, they have begun running courses on LaTeX and OpenOffice. Despite
the fact that these teaching slots are a minority, they signal the beginning
of a change. With demand, courses expand. With more people saving $300 and
installing OpenOffice, such courses will flourish.

Paul Hovnanian P.E.

unread,
Mar 24, 2006, 4:00:16 PM3/24/06
to
You think schools are bad, I've seen articles in periodicals (like Dr.
Dobbs) where a (supposed) s/w professional 'demonstrates' some complex
data structure or algorithm by writing a demo program that calls a
Microsoft API which encapsulates (i.e. hides) all the details.

Microsoft is encouraging the development of s/w engineers that know
nothing more than how to drag and drop pre written components (created
in India, no doubt) into some development tool.

--
Paul Hovnanian mailto:Pa...@Hovnanian.com
------------------------------------------------------------------
Smoking is one of the leading causes of statistics.
-- Fletcher Knebel

Richard Rasker

unread,
Mar 24, 2006, 3:57:31 PM3/24/06
to
Op Fri, 24 Mar 2006 20:10:20 +0000, schreef B Gruff:

Same here - but even worse. Some years ago, my stepdaughter (who was in
primary school then) brought home a flyer, with some burbling along
the lines of "Computer classes are essential for your child's future!",
and "Don't deny your child the chance to a better life!", etcetera. This
crap was handed out by a private training institute, but with the school's
approval.

Not a Word (pun intended) about what exactly these "computer classes"
entailed; of course, I knew what to expect, but checked it out anyway.
And yes, the M$ logo was prominently situated at the top of this company's
list of partners. And yes, when I called them, I learned that the course
included the latest M$ Office version (2003), and that these "classes"
taught children to use most of the applications listed above - but without
the "difficult" (read: actually important and useful) bits, such as
setting up an e-mail account or mail filters. And, of course, just $500
for all this was a true bargain ... especially because this included a
$25(!) discount on the latest M$ Office suite, compared to retail pricing.
Yup, just $500 would take care of all your ten-year-old-child's
brainwashing needs.

To cut a long story short, I kept them busy for almost an hour at their
toll-free (for me, not for them :-) information number, and just when they
thought they'd finally reeled me in, I innocently asked whther they could
supply Linux versions of the software required ... "Oh, you can't? Well,
that's too bad ... we don't use Windows. Bye bye!"


Richard Rasker

--
Linetec Translation and Technology Services

http://www.linetec.nl/

Lobo

unread,
Mar 24, 2006, 4:05:05 PM3/24/06
to
On Fri, 24 Mar 2006 20:10:20 +0000, B Gruff <bbg...@yahoo.co.uk>
wrote:

I've posted this before, but I think it deserves more attention:

http://www.cjlt.ca/content/vol31.1/hepburn.html

...
When schools select commercial software packages, the students are not
only exposed to the logos and products of a company, but they are also
trained in how to use the software. In this sense, schools are a
highly efficient marketing opportunity for software companies as they
train the future users of the product while paying the company for the
right to do so. Ideally, the focus when teaching students about
software should be on the concepts involved, rather than simply
teaching them how to use a particular product. This approach, however,
would require the schools to provide multiple examples of software
packages and this could be expensive.
...
...
Beside the cost savings and flexibility gained from the use of OSS,
schools will find themselves in a position to show leadership in
addressing some problems relating to social and ethical issues. The
corporate involvement problem associated with exposing students to,
and training them on, a particular company’s software product is
immediately diminished. Student exposure to proprietary software is
reduced as OSS alternatives that do not have a corporate connection
gain a higher profile. This is done without eroding student skills in
working with software. Indeed, working with OSS helps ensure that
students are exposed to multiple software systems. This experience
combined with that from using proprietary software that is available
would lead to increases in ICT literacy.
...

JEDIDIAH

unread,
Mar 24, 2006, 4:14:23 PM3/24/06
to

...none of which is relevant to teaching Computer Science.

--
Sophocles wants his cut. |||
/ | \

Posted Via Usenet.com Premium Usenet Newsgroup Services
----------------------------------------------------------
** SPEED ** RETENTION ** COMPLETION ** ANONYMITY **
----------------------------------------------------------
http://www.usenet.com

The Ghost In The Machine

unread,
Mar 24, 2006, 6:59:42 PM3/24/06
to
In comp.os.linux.advocacy, 7
<website_...@www.enemygadgets.com>
wrote
on Fri, 24 Mar 2006 19:17:00 GMT
<MAXUf.41491$wl.1...@text.news.blueyonder.co.uk>:

*DING*

[clippy graphic] It appears you are attempting to write provocateur
literature. Did you need some assistance?

[ ] Yes, please; write some catchy lyrics and some tunes to go with.
[ ] I've already written some lyrics [here]; please diddle me up a
good protest song.
[ ] I've got this wonderful tune in my head that cries to be out on
paper; please [write some lyrics].
[ ] I'm fresh out of matches; got any?
[ ] Please print out plans for a paper-machie head of [somebody] here so
that I and others can [select: use him/her for a pinata,
hang him/her in effigy,
burn him/her in effigy,
bury him/her in peat moss and recycle the
remains 3 months later as cigarette
lighters.]
[ ] I need some very colorful poster board posters.
[ ] I need something intelligent to write on those posters.
[ ] Just invent a slogan I can use on those posters; it doesn't have to
be too bright.
[ ] I need some lighter fluid and some [select: bras, briefs, boxers,
offensive T-shirts, hats] to burn.
[ ] I need a cause.
[ ] Please go to hell, go directly to hell, do not pass go, do not
collect any money, you capitalist paper clip! :-)

[OK]

*click*

--
#191, ewi...@earthlink.net
Windows Vista. Because everyone wants a really slick-looking 8-sided wheel.

P.

unread,
Mar 24, 2006, 11:02:02 PM3/24/06
to
Lobo mentioned something about:

> When schools select commercial software packages, the students are not
> only exposed to the logos and products of a company, but they are also
> trained in how to use the software. In this sense, schools are a
> highly efficient marketing opportunity for software companies as they
> train the future users of the product while paying the company for the
> right to do so.

To expand on this theme, you might want to read "No Logo" by Naomi Klein.

P.
--
"This rudderless world is not shaped by vague metaphysical forces. It is not
God who kills the children. Not Fate that butchers them or Destiny that
feeds them to dogs. It's us. Only us." - Rorschach, Watchmen

Lobo

unread,
Mar 24, 2006, 11:52:17 PM3/24/06
to
On Sat, 25 Mar 2006 13:02:02 +0900, "P." <no....@nomail.afraid.org>
wrote:

>Lobo mentioned something about:
>
>> When schools select commercial software packages, the students are not
>> only exposed to the logos and products of a company, but they are also
>> trained in how to use the software. In this sense, schools are a
>> highly efficient marketing opportunity for software companies as they
>> train the future users of the product while paying the company for the
>> right to do so.
>
>To expand on this theme, you might want to read "No Logo" by Naomi Klein.
>
>P.

Good site. Reminds me of Chiquita Bananas and United Fruit.....
And what's behind, "He's a donkey."
( In Canada, "He's a moron.")

Have you seen the documentary?
http://www.thecorporation.com/

I doubt that people in the US will ever see this on commercial TV
although it has run numerous times here in Canada.

Roy Schestowitz

unread,
Mar 25, 2006, 3:41:52 AM3/25/06
to
__/ [ Paul Hovnanian P.E. ] on Friday 24 March 2006 21:00 \__

> You think schools are bad, I've seen articles in periodicals (like Dr.
> Dobbs) where a (supposed) s/w professional 'demonstrates' some complex
> data structure or algorithm by writing a demo program that calls a
> Microsoft API which encapsulates (i.e. hides) all the details.
>
> Microsoft is encouraging the development of s/w engineers that know
> nothing more than how to drag and drop pre written components (created
> in India, no doubt) into some development tool.

This is similar to the arguments (and critique) that are associated with
WYSIWYG paradigms for Web design.

Option 1: Launch a (decent) text editor, write content, then markup
Option 2: Use a WYSIWYG toolkit (the 'pixel perfect' assumption), then
generate/save as HTML. Open output in text editor to clean up and mend (or
re-write from scratch).

The Web began with editors like VIM for authoring. The next, highly-flawed
generation was WYSIWYG-based design and IE-only coding, which is not
standards compliant (interpretation embedded in closed-source, proprietary
code). The latest paradigm which everyone (who has a clue or can afford)
uses nowadays are content management systems, which are just a nice
front-end to a rudimentary text editor.

Best wishes,

Roy

--
Roy S. Schestowitz | Othello for free: http://othellomaster.com
http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E
8:30am up 17 days 1:07, 8 users, load average: 0.49, 0.65, 0.60
http://iuron.com - help build a non-profit search engine

Ian Hilliard

unread,
Mar 25, 2006, 6:15:09 AM3/25/06
to

For the most part, particularly in so-called modern Western countries,
this is true. Instead, the students are being taught to use MS products.
As the OS is so fragile, the students can't be taught other than basic
management of the systems. Othrerwise, it would be necessary to do a
number of reinstalls after every class.

In countries like India & China, the students are learning on Linux and
are REALLY learning computing. This includes full system administration
and programming in a number of languages. It is no wonder that these
countries are taking over the IT industry.

Ian

chrisv

unread,
Mar 25, 2006, 8:05:27 AM3/25/06
to
Ian Hilliard wrote:

> On Fri, 24 Mar 2006 17:48:38 +0000, Roy Schestowitz wrote:
>
>> ,----[ Quote ]
>> | Schools and colleges are failing the next generation of scientists by
>> | not providing the computer skills they need to do the job, according
>> | to the scientists behind Microsoft Research's 2020 report.
>> `----
>>
>> I will avoid flaming by making the remarks one begs for.
>
> For the most part, particularly in so-called modern Western countries,
> this is true. Instead, the students are being taught to use MS products.
> As the OS is so fragile, the students can't be taught other than basic
> management of the systems. Othrerwise, it would be necessary to do a
> number of reinstalls after every class.

Not only that, but the entire system is intentionally dumbed-down and
opaque.

> In countries like India & China, the students are learning on Linux and
> are REALLY learning computing. This includes full system administration
> and programming in a number of languages. It is no wonder that these
> countries are taking over the IT industry.

Yeah, you might be able to make a case for Windwoes (or Mac) for people
who just want a platform for running their favorite applications, but for
anyone who really CARES about computers and wants to really understand
how they work, there's just no contest - Linux rules.

Roy Schestowitz

unread,
Mar 25, 2006, 8:32:53 AM3/25/06
to
__/ [ chrisv ] on Saturday 25 March 2006 13:05 \__

This reminds me of the following essay, which I recommend.

http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html

Joel used to manage the Excel team, but he now compiles his software for
Linux. In the essay, he whines about CS students who never really learned
*computing* and don't know the very fundamentals.

Best wishes,

Roy

--
Roy S. Schestowitz | Vista: as the reputation of "Longhorn" was mucked


http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E

1:30pm up 17 days 6:07, 8 users, load average: 1.96, 2.23, 2.22

Ian Hilliard

unread,
Mar 25, 2006, 11:53:55 AM3/25/06
to
On Sat, 25 Mar 2006 13:32:53 +0000, Roy Schestowitz wrote:

> This reminds me of the following essay, which I recommend.
>
> http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html
>
> Joel used to manage the Excel team, but he now compiles his software for
> Linux. In the essay, he whines about CS students who never really learned
> *computing* and don't know the very fundamentals.
>
> Best wishes,
>
> Roy

Great article. It glances along the edge of one of my pet hates. I call
it the Windows programmer syndrome. It is a generation of programmers, who
don't know how to do the basics. They have to call some special Windows
API to do all the work for them.

A recent example of this is some code to get the file name from the path
name. The programmer created a new class wrapping shlwapi, instead of
realizing that it is a simple string parsing task. With such programmers,
it is no wonder that modern programs are so bloated and buggy.

Ian

Roy Schestowitz

unread,
Mar 25, 2006, 11:57:46 AM3/25/06
to
__/ [ Ian Hilliard ] on Saturday 25 March 2006 16:53 \__

A lecture which was delivered to us at the LUG last year had quite an
'exhibit'. Apparently, a guy who applied for a job at a consultancy did not
know what the command line was, let alone seen one. I believe he had an
IT/CS degree. *gasp*

Best wishes,

Roy

--
Roy S. Schestowitz | Useless fact: 85% of plant life in in the oceans


http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E

4:55pm up 17 days 7:40, 8 users, load average: 0.47, 0.41, 0.46
http://iuron.com - next generation of search paradigms

Roy Culley

unread,
Mar 25, 2006, 12:14:25 PM3/25/06
to
begin risky.vbs
<e03stc$231t$2...@godfrey.mcc.ac.uk>,

Roy Schestowitz <newsg...@schestowitz.com> writes:
> __/ [ Ian Hilliard ] on Saturday 25 March 2006 16:53 \__
>
>> On Sat, 25 Mar 2006 13:32:53 +0000, Roy Schestowitz wrote:
>>
>>> This reminds me of the following essay, which I recommend.
>>>
>>> http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html
>>>
>>> Joel used to manage the Excel team, but he now compiles his software for
>>> Linux. In the essay, he whines about CS students who never really learned
>>> *computing* and don't know the very fundamentals.
>>>
>>> Best wishes,
>>>
>>> Roy
>>
>> Great article. It glances along the edge of one of my pet hates. I call
>> it the Windows programmer syndrome. It is a generation of programmers, who
>> don't know how to do the basics. They have to call some special Windows
>> API to do all the work for them.
>>
>> A recent example of this is some code to get the file name from the path
>> name. The programmer created a new class wrapping shlwapi, instead of
>> realizing that it is a simple string parsing task. With such programmers,
>> it is no wonder that modern programs are so bloated and buggy.
>>
>> Ian
>
> A lecture which was delivered to us at the LUG last year had quite an
> 'exhibit'. Apparently, a guy who applied for a job at a consultancy did not
> know what the command line was, let alone seen one. I believe he had an
> IT/CS degree. *gasp*

Almost without exception I have found SW engineers with a CS degree to
be a waste of time. The best SW engineers seem to be those with an
engineering / science degree. I did work woth one excellent SW
engineer who had a music degree. There again, many say SW is more of
an art than a science. :-)

Lobo

unread,
Mar 25, 2006, 12:32:24 PM3/25/06
to

Any countries that do not pro-actively support Open Source in their
schools will be at a disadvantage in IT within the next 10 years.
Teaching closed source computing creates a "dumbing down" effect on
young minds.

Roy Schestowitz

unread,
Mar 25, 2006, 12:45:14 PM3/25/06
to
__/ [ Roy Culley ] on Saturday 25 March 2006 17:14 \__

Ahem. I have a degree in software engineering. However, from Open Source
projects, I have come to know some great programmers with an arts-inclined
background. For a change, they can document the code properly and present it
(verbally, or in writing) very well.

Code is poetry, as WordPress say (Microsoft stole the slogan from WordPress
by the way [1]). I guess that arts students them find it more difficult to
be employed where the prescribed requirement is a loveaffrair with
computers, which is confined to take place in a College/University under
careful supervision with silly mockup 'exercise' and homework. Self taught
rarely counts.

Best wishes,

Roy

[1] http://photomatt.net/2005/09/10/poetry-is-microsoft/

--
Roy S. Schestowitz | GPL'd Othello: http://othellomaster.com


http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E

5:35pm up 17 days 8:20, 8 users, load average: 0.73, 0.75, 0.83
http://iuron.com - Open Source knowledge engine project

M

unread,
Mar 25, 2006, 1:08:56 PM3/25/06
to
Ian Hilliard wrote:

Definitely a waste of effort, use _splitpath :-)

Regards,

M

Roy Culley

unread,
Mar 25, 2006, 2:47:47 PM3/25/06
to
begin risky.vbs
<e03vmd$23tl$1...@godfrey.mcc.ac.uk>,

Roy Schestowitz <newsg...@schestowitz.com> writes:
> __/ [ Roy Culley ] on Saturday 25 March 2006 17:14 \__
>
>> Almost without exception I have found SW engineers with a CS degree
>> to be a waste of time. The best SW engineers seem to be those with
>> an engineering / science degree. I did work woth one excellent SW
>> engineer who had a music degree. There again, many say SW is more
>> of an art than a science. :-)
>
> Ahem. I have a degree in software engineering.

There are always exceptions. I've no doubt you are one of them. :-)

John Bailo

unread,
Mar 25, 2006, 3:55:12 PM3/25/06
to
Roy Culley wrote:


> Almost without exception I have found SW engineers with a CS degree to
> be a waste of time. The best SW engineers seem to be those with an
> engineering / science degree.

Cool. I have BS in Biology!

Actually, I avoided computers for a long time because I was more interested
in science and doing calculus problems on paper seemed far more intricate
than programming addition in BASIC on a minicomputer. My eyes were opened
a little more in college when I studied numerical analysis -- but that was
about the *limits* of the digital computer. My best pal there was a CS
major and he introduced me to computer art and music and that made me think
quite a bit more (he's the guy who set up the You Read It... site in my
sig).

> I did work woth one excellent SW
> engineer who had a music degree. There again, many say SW is more of
> an art than a science. :-)

To me its very literary...like writing a complicated novel (not that I've
ever done that). Hey, code is *text* remember. Even when its /graphical/
its graphics driven by text instructions in a highly structured language.

An interesting question is why the people who study Comparative Literature
aren't the best computer programmers -- or maybe they never tried, or maybe
they just think that language-language is more fascinating than java...


--

Get the new
http://www.you-read-it-here-first.com

Mark Kent

unread,
Mar 26, 2006, 3:52:00 PM3/26/06
to
begin oe_protect.scr
Roy Schestowitz <newsg...@schestowitz.com> espoused:

Only a fool wastes money. Look at how the casinos cleaned out the
European Aristos...

--
| Mark Kent -- mark at ellandroad dot demon dot co dot uk |
Not recommended for children.

Mark Kent

unread,
Mar 26, 2006, 3:50:34 PM3/26/06
to
begin oe_protect.scr
Roy Schestowitz <newsg...@schestowitz.com> espoused:

I was interviewing graduates recently, potential employees. We have a
/very/ stringent recruitment system with all kinds of tests/exams/sats,
psychological profiling and so on... but... the chap I was talking to
was a comp sci/spanish graduate from a well respected uni here. In
chatting for a while, it turned out that his final year project was
written for Windows. No particular problem with that, but a vague alarm
bell was ringing, so I asked him to tell me, briefly, how Unix differs
from Windows. He couldn't answer the question in any meaningful way at
all. Indeed, he went on to explain that his whole course had been
focussed on Windows. That doesn't sound like comp sci to me...
The phsychologist I was interviewing with asked me if the question
was a bit too detailed for someone who had a degree, until I
explained...

Needless to say, he wasn't employed.

Roy Schestowitz

unread,
Mar 27, 2006, 2:09:08 AM3/27/06
to
__/ [ Mark Kent ] on Sunday 26 March 2006 21:50 \__

Intersting story, Mark. I have encountered similar scenarios -- often ones
that involve colleagues whose research code is locked in to one vendor
(guess which one?). I have grown tired of repeating my arguments because it
only seem to drain time; nothing more. Even if eventually fruitful, I rarely
think such efforts are worth the investment. The common denominator is that
all such individuals were born and raised on Windows environments. They know
nothing else; both from a technical aspect and philosophical aspects, too.

Best wishes,

Roy

--
Roy S. Schestowitz | $> sudo root; cd /; rm -rf *.doc


http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E

8:00am up 18 days 21:45, 9 users, load average: 0.71, 0.51, 0.58

chrisv

unread,
Mar 27, 2006, 9:27:57 AM3/27/06
to
Roy Schestowitz wrote:

>Code is poetry,

Yuck! Don't say that! Poetry is tripe.

Roy Schestowitz

unread,
Mar 27, 2006, 10:17:33 AM3/27/06
to
__/ [ chrisv ] on Monday 27 March 2006 15:27 \__

> Roy Schestowitz wrote:
>
>>Code is poetry,
>
> Yuck! Don't say that! Poetry is tripe.

I never said that. Like you, I never liked the analogy. It was conceived by a
programmer who studied American history at the time.

Best wishes,

Roy

--
Roy S. Schestowitz | "The speed of time is one second per second"


http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E

4:15pm up 19 days 6:00, 8 users, load average: 1.73, 1.50, 1.19

Edwin

unread,
Mar 27, 2006, 10:40:50 AM3/27/06
to

Do you really believe you won any friends for Linux that day? Other
than wasting an hour of some poor telemarketer's time, who doesn't get
paid that much, and who probably lives off of commissions, what victory
do you imagine you struck for Linux? Is your hatred of MS so
irrational that you take pleasure in going out of your way to hurt
people for daring to sell or teach MS software?

Gordon

unread,
Mar 27, 2006, 10:51:26 AM3/27/06
to
Edwin wrote:

It's not the fact that MS software is taught - it's the fact that ONLY MS
software is taught, and NOTHING ELSE.

--
Gordon Burgess-Parker
Interim Systems and Management Accounting
www.gbpcomputing.co.uk

Edwin

unread,
Mar 27, 2006, 2:05:21 PM3/27/06
to

How does your "fact" answer the questions I asked?

Dirk Diggler

unread,
Mar 27, 2006, 5:04:28 PM3/27/06
to

BAAAWWAAAHHHH -

Dick Rasker is you're typical lintard idiot. Nothing says linux like
pissing people off.

Funny thing is that Dick is so proud that he wasted an hours of the
telemarketers time. Fact is that Dick also wasted a full hour of his
own time. Makes perfect sense that the time of a Lintard like Dick is
worth much less than an hour of a telemarketer.

More proof that linux makes you stupid like dick.

Colin Day

unread,
Mar 27, 2006, 6:24:23 PM3/27/06
to
Edwin wrote:
> Richard Rasker wrote:


>>Not a Word (pun intended) about what exactly these "computer classes"
>>entailed; of course, I knew what to expect, but checked it out anyway.
>>And yes, the M$ logo was prominently situated at the top of this company's
>>list of partners. And yes, when I called them, I learned that the course
>>included the latest M$ Office version (2003), and that these "classes"
>>taught children to use most of the applications listed above - but without
>>the "difficult" (read: actually important and useful) bits, such as
>>setting up an e-mail account or mail filters. And, of course, just $500
>>for all this was a true bargain ... especially because this included a
>>$25(!) discount on the latest M$ Office suite, compared to retail pricing.
>>Yup, just $500 would take care of all your ten-year-old-child's
>>brainwashing needs.
>>
>>To cut a long story short, I kept them busy for almost an hour at their
>>toll-free (for me, not for them :-) information number, and just when they
>>thought they'd finally reeled me in, I innocently asked whther they could
>>supply Linux versions of the software required ... "Oh, you can't? Well,
>>that's too bad ... we don't use Windows. Bye bye!"
>
>
> Do you really believe you won any friends for Linux that day? Other
> than wasting an hour of some poor telemarketer's time, who doesn't get
> paid that much, and who probably lives off of commissions, what victory
> do you imagine you struck for Linux? Is your hatred of MS so
> irrational that you take pleasure in going out of your way to hurt
> people for daring to sell or teach MS software?
>

War is cruelty, you cannot refine it. William T. Sherman

Colin Day

The Ghost In The Machine

unread,
Mar 28, 2006, 11:59:27 AM3/28/06
to
In comp.os.linux.advocacy, chrisv
<chr...@nospam.invalid>
wrote
on Mon, 27 Mar 2006 08:27:57 -0600
<iitf22tg6fdss9fgj...@4ax.com>:

> Roy Schestowitz wrote:
>
>>Code is poetry,
>
> Yuck! Don't say that! Poetry is tripe.
>

Code and poetry are mixed bags. :-) Linux code is
probably not a thing of beauty, but then neither is a
dragster engine -- unless one counts 0-300 in a quarter
mile beautiful. (I'd consider it noisy, smelly, and maybe
mildly interesting, though. The pre-spin of the tires
must stink! :-) )

Now Windows code...well, that's probably tripe. :-)

Edwin

unread,
Mar 28, 2006, 12:49:15 PM3/28/06
to

Exactly what was the reason for making "war" on some poor telemarketer?

Colin Day

unread,
Mar 28, 2006, 1:28:52 PM3/28/06
to

If that telemarketer doesn't want war, then perhaps that telemarketer
should stop
working for a Microsoft-only company.

Colin Day

Edwin

unread,
Mar 28, 2006, 1:38:24 PM3/28/06
to

Working for a Microsoft-only company is not justification for being
abused or attacked.

Linux doesn't need any help from terrorists.

Colin Day

unread,
Mar 28, 2006, 10:27:08 PM3/28/06
to

Hey, I attack and abuse (mostly abuse) telemarketers whatever
they're selling. If they work for a Microsoft-only company, that's
just more of a reason.

Colin Day

Edwin

unread,
Mar 29, 2006, 10:24:58 AM3/29/06
to

IOW, you're a petty, vicious individual who looks for excuses to hurt
other people. Gotcha.

Throughout human history, things like race, religion, and politics were
used as excuses for hating and hurting people. People like you have
taken this inhumanity to man down to a whole new, sicker level: to
think it's okay, and worse, even desirable, to cause harm to others
because they sell or use software you don't approve of.

You can't hide behind not liking telemarketers either. In this case
the OP called them.

Colin Day

unread,
Mar 29, 2006, 6:20:12 PM3/29/06
to
Edwin wrote:
> Colin Day wrote:
>
>>Edwin wrote:
>>
>>>Colin Day wrote:
>>>
>>>
>>>>Edwin wrote:
>>>>
>>
>>>>>Exactly what was the reason for making "war" on some poor telemarketer?
>>>>>
>>>>
>>>>If that telemarketer doesn't want war, then perhaps that telemarketer
>>>>should stop working for a Microsoft-only company.
>>>
>>>
>>>Working for a Microsoft-only company is not justification for being
>>>abused or attacked.
>>>
>>>Linux doesn't need any help from terrorists.
>>>
>>
>>Hey, I attack and abuse (mostly abuse) telemarketers whatever
>>they're selling. If they work for a Microsoft-only company, that's
>>just more of a reason.
>
>
> IOW, you're a petty, vicious individual who looks for excuses to hurt
> other people. Gotcha.

And telemarketers are vicious individuals who use some "exciting"
product as an excuse to annoy people.

>
> Throughout human history, things like race, religion, and politics were
> used as excuses for hating and hurting people. People like you have
> taken this inhumanity to man down to a whole new, sicker level: to
> think it's okay, and worse, even desirable, to cause harm to others
> because they sell or use software you don't approve of.
>

How are telemarketers "hurt" by my rudeness?

> You can't hide behind not liking telemarketers either. In this case
> the OP called them.
>

OK. That might be a bit cold.

Edwin

unread,
Mar 29, 2006, 7:01:24 PM3/29/06
to

Colin Day wrote:
> Edwin wrote:
> > Colin Day wrote:
> >
> >>Edwin wrote:
> >>
> >>>Colin Day wrote:
> >>>
> >>>
> >>>>Edwin wrote:
> >>>>
> >>
> >>>>>Exactly what was the reason for making "war" on some poor telemarketer?
> >>>>>
> >>>>
> >>>>If that telemarketer doesn't want war, then perhaps that telemarketer
> >>>>should stop working for a Microsoft-only company.
> >>>
> >>>
> >>>Working for a Microsoft-only company is not justification for being
> >>>abused or attacked.
> >>>
> >>>Linux doesn't need any help from terrorists.
> >>>
> >>
> >>Hey, I attack and abuse (mostly abuse) telemarketers whatever
> >>they're selling. If they work for a Microsoft-only company, that's
> >>just more of a reason.
> >
> >
> > IOW, you're a petty, vicious individual who looks for excuses to hurt
> > other people. Gotcha.
>
> And telemarketers are vicious individuals who use some "exciting"
> product as an excuse to annoy people.

No they're not. I've known people who work those jobs. They're
mostly low paid people who wouldn't be doing that kind of work if they
could get a better job.

In any case, the OP called them. They didn't call him.

> >
> > Throughout human history, things like race, religion, and politics were
> > used as excuses for hating and hurting people. People like you have
> > taken this inhumanity to man down to a whole new, sicker level: to
> > think it's okay, and worse, even desirable, to cause harm to others
> > because they sell or use software you don't approve of.
> >
>
> How are telemarketers "hurt" by my rudeness?

Telemarketers are hurt by having someone deliberately waste an hour of
their time.

> > You can't hide behind not liking telemarketers either. In this case
> > the OP called them.
> >
>
> OK. That might be a bit cold.

I think stronger adjective than that can be applied.

Colin Day

unread,
Mar 29, 2006, 9:13:39 PM3/29/06
to
Edwin wrote:

> Colin Day wrote:

>>How are telemarketers "hurt" by my rudeness?
>
>
> Telemarketers are hurt by having someone deliberately waste an hour of
> their time.
>
>

Don't worry, I don't hold them very long. I have other methods.

Colin Day

William Poaster

unread,
Mar 30, 2006, 3:31:51 AM3/30/06
to
On Thu, 30 Mar 2006 02:13:39 +0000, Colin Day wrote:

> Edwin wrote:
>
>> Colin Day wrote:
>
>>>How are telemarketers "hurt" by my rudeness?
>>
>>
>> Telemarketers are hurt by having someone deliberately waste an hour of
>> their time.

Good. Then maybe they'd stop wasting *other* people's time. Telemarketers
are parasites.

> Don't worry, I don't hold them very long. I have other methods.
>
> Colin Day

--
SuSE 10.1 OSS Beta8 (Agama Lizard)
All posts from googlegroups.com are killfiled.
"Internet Explorer; a collection of security holes
held together by browser code”- Novell.

JEDIDIAH

unread,
Mar 30, 2006, 8:51:30 AM3/30/06
to
On 2006-03-29, Colin Day <cd...@sc.rr.com> wrote:
> Edwin wrote:
>> Colin Day wrote:
>>
>>>Edwin wrote:
>>>
>>>>Colin Day wrote:
>>>>
>>>>
>>>>>Edwin wrote:
> And telemarketers are vicious individuals who use some "exciting"
> product as an excuse to annoy people.
>
>>
>> Throughout human history, things like race, religion, and politics were
>> used as excuses for hating and hurting people. People like you have
>> taken this inhumanity to man down to a whole new, sicker level: to
>> think it's okay, and worse, even desirable, to cause harm to others
>> because they sell or use software you don't approve of.

What harm? You tell the representative of a company that you
think they are associated with scum? That may be harmful but it doesn't
matter. All consumers need to be at liberty to tell companies, and
employees of companies hat they are either scum or associated with scum.

Otherwise, companies will never know any better. They will remain
blissfully ignorant of ignoring the customer (perhaps to their own peril).

>>
>
> How are telemarketers "hurt" by my rudeness?

I like to approach this from the "walk a moon in their mocassins"
perspective. I have infact attempted to do the "telemarketing thing". I
was pisspoor at it because I am bad at lying to people. Now as someone
trying to meet quota, and subject to quick termination for failing to
meet quota, I would much rather that people who aren't marks not waste
my time.

Time is money in that business.

>
>> You can't hide behind not liking telemarketers either. In this case
>> the OP called them.
>>
>
> OK. That might be a bit cold.


--
Sure, I could use iTunes even under Linux. However, I have |||
better things to do with my time than deal with how iTunes doesn't / | \
want to play nicely with everyone else's data (namely mine). I'd
rather create a DVD using those Linux apps we're told don't exist.

JEDIDIAH

unread,
Mar 30, 2006, 8:55:09 AM3/30/06
to
On 2006-03-30, Edwin <thor...@juno.com> wrote:
>
> Colin Day wrote:
>> Edwin wrote:
>> > Colin Day wrote:
>> >
>> >>Edwin wrote:
>> >>
>> >>>Colin Day wrote:
>> >>>
>> >>>
>> >>>>Edwin wrote:
[deletia]

>> > Throughout human history, things like race, religion, and politics were
>> > used as excuses for hating and hurting people. People like you have
>> > taken this inhumanity to man down to a whole new, sicker level: to
>> > think it's okay, and worse, even desirable, to cause harm to others
>> > because they sell or use software you don't approve of.
>> >
>>
>> How are telemarketers "hurt" by my rudeness?
>
> Telemarketers are hurt by having someone deliberately waste an hour of
> their time.

This all boils down to how effective company policies are.

The telemarketer can always hang up. There's no good reason for
them to stay on the line while my wife reads them The Cat in the Hat.
Their company wants to abuse us, and will gladly do the same to their own
employees in the process.

It sucks to work for an evil corporation.

[deletia]

Edwin

unread,
Mar 30, 2006, 10:20:32 AM3/30/06
to

William Poaster wrote:
> On Thu, 30 Mar 2006 02:13:39 +0000, Colin Day wrote:
>
> > Edwin wrote:
> >
> >> Colin Day wrote:
> >
> >>>How are telemarketers "hurt" by my rudeness?
> >>
> >>
> >> Telemarketers are hurt by having someone deliberately waste an hour of
> >> their time.
>
> Good. Then maybe they'd stop wasting *other* people's time. Telemarketers
> are parasites.

You're overlooking the fact that the OP called them, not the other way
around.

[snip]

Colin Day

unread,
Mar 30, 2006, 10:47:40 AM3/30/06
to
JEDIDIAH wrote:
> On 2006-03-29, Colin Day <cd...@sc.rr.com> wrote:

>
>>How are telemarketers "hurt" by my rudeness?
>
>
> I like to approach this from the "walk a moon in their mocassins"
> perspective. I have infact attempted to do the "telemarketing thing". I
> was pisspoor at it because I am bad at lying to people. Now as someone
> trying to meet quota, and subject to quick termination for failing to
> meet quota, I would much rather that people who aren't marks not waste
> my time.
>
> Time is money in that business.
>

I also did it for a week (as someone here said of IBM: I couldn't sell a
parachute to someone thrown out of a plane at 30,000 feet).

As I said elesewhere, I don't waste much time.

Gordon

unread,
Mar 30, 2006, 11:24:32 AM3/30/06
to
Colin Day wrote:

At one company me and my boss had an unspoken competition as to who could
get rid of cold-calling telesales the quickest. He won with 3 seconds!

Edwin

unread,
Mar 30, 2006, 11:34:54 AM3/30/06
to

I'll bet you didn't appreciate hostile responses from the people you
called.

> As I said elesewhere, I don't waste much time.

But the OP did. He called them, with the intention of wasting their
time. He managed to take an hour.

He threw away an hour of his time, and of their time, and in the end
neither he nor Linux gained a thing.

Do you think the person he abused is going to say "I wish my company
sold more than Windows products," or isn't he more likely to have a
negative opinion of Linux Advocates?

Edwin

unread,
Mar 30, 2006, 11:40:56 AM3/30/06
to

Correct me if I'm wrong. "Cold-calling" doesn't consist of you
calling a seller whom you already know doesn't sell what you want to
buy, and leading him along for an hour, before you say "we don't use
Windows, bye."

Colin Day

unread,
Mar 30, 2006, 2:54:56 PM3/30/06
to
Edwin wrote:
> Colin Day wrote:
>
>>JEDIDIAH wrote:
>>
>>>On 2006-03-29, Colin Day <cd...@sc.rr.com> wrote:
>>
>>>>How are telemarketers "hurt" by my rudeness?
>>>
>>>
>>> I like to approach this from the "walk a moon in their mocassins"
>>>perspective. I have infact attempted to do the "telemarketing thing". I
>>>was pisspoor at it because I am bad at lying to people. Now as someone
>>>trying to meet quota, and subject to quick termination for failing to
>>>meet quota, I would much rather that people who aren't marks not waste
>>>my time.
>>>
>>> Time is money in that business.
>>>
>>
>>I also did it for a week (as someone here said of IBM: I couldn't sell a
>>parachute to someone thrown out of a plane at 30,000 feet).
>
>
> I'll bet you didn't appreciate hostile responses from the people you
> called.
>

This was the mid eighties, people weren't as bombarded back then. Also,
I can take it as well as dish it out.

>
>>As I said elesewhere, I don't waste much time.
>
>
> But the OP did. He called them, with the intention of wasting their
> time. He managed to take an hour.
>
> He threw away an hour of his time, and of their time, and in the end
> neither he nor Linux gained a thing.
>
> Do you think the person he abused is going to say "I wish my company
> sold more than Windows products," or isn't he more likely to have a
> negative opinion of Linux Advocates?
>

If his opinion meant anything, he wouldn't be telemarketing.

Colin Day

Sinister Midget

unread,
Mar 30, 2006, 7:48:17 PM3/30/06
to
On 2006-03-30, Gordon <gor...@gbpcomputing.co.uk.invalid> posted something concerning:

> At one company me and my boss had an unspoken competition as to who could
> get rid of cold-calling telesales the quickest. He won with 3 seconds!

I was in the boss' office one day when a telemarketer called. He
listened for about 30 seconds, then he told the guy "I'll let you talk
to my brother" and handed it to me. I listened. The guy was trying to
sell mortgages. He asked a question about ownership. I said "I'm not
sure. I'd better let you talk to my brother" and handed it back to the
boss. Again, he listened, told the guy he'd need to talk to his
brother, and handed it back to me.

Believe it or not, the guy on the phone started getting really angry
after about 15 minutes! I couldn't believe it! Not only that, but after
another couple of handoffs, he HUNG UP ON ME!

The /NERVE/ of some people!

(I'm told there's some guy that does this regularly, but I can't verify
that.)

--
Microsoft: The company that made email dangerous.

Jim

unread,
Apr 1, 2006, 7:50:13 AM4/1/06
to

revenge for the 2am calls from India trying to sell us overpriced cell
plans.

ericmatteson...@hotmail.com

unread,
Apr 1, 2006, 3:04:14 PM4/1/06
to
>
> Roy Schestowitz wrote:
> ,----[ Quote ]
> | Schools and colleges are failing the next generation of scientists by
> | not providing the computer skills they need to do the job, according
> | to the scientists behind Microsoft Research's 2020 report.
> `----
>
> I will avoid flaming by making the remarks one begs for.
>
I know what you mean. Community college bookstores fail to
stock books about how to write c programs that run on
LINUX XWINDOWS the operating system of the future.
It took me six years of scavenging for scraps of information
on the Internet to learn little pieces of information about
how to write c programs that run on LINUX XWINDOWS.
I finally have been able to write an example program
that displays simple bitmaps *.bmp on linux
XWindows
// this is the first line of this program
// gcc -Wall xwview04.c -L/usr/X11R6/lib -lX11 -o xwview04.out
// ./xwview04.out at XWindows linux bash command prompt
#include<X11/Xutil.h>
#include<stdio.h>
// optional #include<X11/Xlib.h>
// unknown #include<X11/keysym.h>
// optional #include<X11/Xresource.h>
// optional #include<X11/Xatom.h>
// optional #include<X11/Xos.h>
// unknown #include<stdlib.h>
#include <stddef.h>
#include <sys/types.h>
#include <dirent.h>
// Copyright C 2006 by Eric Matteson
// permission is granted to copy
// this SOURCE CODE xwview04.c
// and to publish it on the Internet.
// This material may be used at
// least for non profit use.
// This program is not valid without source code.
// Computer users can enforce the open source requirement
// by refusing to use any program that does not have
// source code distributed with it.
// The reccommended proceedure is to distribute this
// program in source code form only and seperately
// compile it on each
// computer that it is to run on.
// ---------------------
const int xxsv = 50;
const int xsv = 62;
const int shrinkth[] = { 0,84,216,376,564,662 };
const int thsixsev[] = { 0,9,10,12,13,14,15 };
const int sevbig[] = { 0,0,0,0,0,0,0,1,0,0,1,0,0,0,1,1,
0,1,0,0,0,1,0,1,0,1,1,0,0,1,1,1,
1,0,0,0,1,0,0,1,1,0,1,0,1,0,1,1,
1,1,0,0,1,1,0,1,1,1,1,0,1,1,1,1 };
const int wporand[] = { 128,64,32,16,8,4,2,1,
1,2,4,8,16,32,64,128,
127,191,223,239,247,251,253,254,
254,253,251,247,239,223,191,127 };
// size of bab[] needs to be same as value of bigbuffsize
const int bigbuffsize = 262144;
char bab[262144];
// ---------------------------------------
int jxwkeyhold[512];
int iiac[64];
char* caap[4];
char cdraw0[65536];
char cdraw1[65536];
char cdraw2[65536];
char cdraw3[65536];
char bar[23040];
char caf[4096];
char can[200];
// ---------------------------------------------
char prebug[180];
char prebud[180];
char diagaap[16384];
int itarget,prevmode,jkeyctr,djkey,rjkey;
int cbmask,scrdepth;
int scnum,cwid,cght,sud,ckey,xolop,xilop,xchoose;
int lmoux,lmouy,fourdirpen,seadirallow,seadirlimit;
char sdirch;
// ---------------------
DIR *xfourdp;
struct dirent *xfourep;
// ---------------------
Display* lpdis;
Window wix;
XEvent report;
GC agc,wgc,bgc,xgc,ygc,zgc;
XSizeHints* rsizehints;
XWMHints* rwmhints;
XClassHint* rclasshints;
Pixmap tempmap0;
Pixmap tempmap1;
Pixmap tempmap2;
Pixmap tempmap3;
Pixmap rempmap;
// ---------------------------
// -----------------------------------------------
int divmodi(int inumer,int idenom,int nzirem);
int onexwchr(int xwcpos,char xwclist[]);
void chrfroms(int chfstart,int chfsize,char xvclist[],
const char* xvslist);
int onexwdig(int xwdpos,char xwdlist[]);
int ixreada(int iarpos,int iarwid,int iarbase,
int nziarnext,char iarlist[]);
int revercram(int rcstart,int rcmany,char revdat[]);
void linuwrn(int lwrnpos,int lwrnwid,int lwrnbase,
char lwrt[],int lwrf);
void uncram(int ucstart,int ucmany,char ucdat[],
int ucfrom);
int ombrlen(int ombrloffset,int ombmaxlen,
char ombuksize[]);
int nzlinedone(int lkbc[],char reekline[]);
int redcst(int llrs,int llrw,int llrbase,
const char* llccs);
// void bitpoke(char btt[],int hds,int twi,int bx,
// int by,int pznorm,int bvbw);
void bitwrt(char bde[],int ski,int wwi,int wx,int wy,
int zltr,int wwvb);
void printstr(char psb[],int psw,int pst,char psf[],
int pstrw,char pstr[]);
int lscale(int lscabc[]);
int lredoffs(int lrosbc[]);
int lctsize(int lctsbc[]);
int lpixperb(int lpixprbc[]);
int lbytespr(int lbprbc[],int nzlbprem);
int lbreadf(int lbreadbc[],char lbrecord[],int lbreadw,
FILE* lbreadh);
int nzreadmbhdr(int nzrhbc[],char nzrhrecord[],
char rhctble[],FILE* nzrhh);
int xwtscroll(int xscbc[],char xscsingle[],
char xscgroup[]);
void zackreadbw(int rpbc[],char rprec[],
char rpct[],char rpbig[],FILE* rph);
void getpine(int gpbc[],char gprec[],char gpct[],
char gpbig[],FILE* gph);
int nonbambi(char** iibplane,int nbbc[],char nbbig[]);
int putpine(char** iirplane,int irplane[],
int vpthresh[],char vpbig[]);
int onebumpw(char** ijplane,int onbbc[],
char ombrecord[],char ombgbig[]);
int twobumpw(char** tjple,int tmbc[],char tmbr[],
char tbig[],char tbf[]);
int twobuz(char** zpl,int zbc[],char zrc[],char zb[],
char zf[],char zn[]);
int fourbump(char** aap,int ac[],char ar[],char ab[],
char af[],char an[]);
char twofromten(int rawenine);
void fonthfill(char fhf[]);
// ----------------------------------------------------
void ilinemake(int* iixt,char* xxdd);
void iktmany(int* imxt);
int nzextcmp(char* uncfn,char* ecright);
int iidoskey(int kkll,int kshiftb,int ixkeyhold[],
const char* klinuxcm);
// --------------------------------------------------
int gcbw(int gcdepth,int gca);
void getgc(Window wigc,GC* wrgc,int gsdepth,int zbnzw);
// *wrgc will have to be freed later
Window makexw(XSizeHints* sizehints,XWMHints* wmhints,
XClassHint* classhints);
// ----------------------------------------------------
int main(int argd,char** argsa)
{
int zandtogm;
char* argufn;
char* adn = NULL;
argufn = NULL;
lmoux=131071;
lmouy=131071;
fourdirpen=0;
sud=0;
while(sud < 200)
{
can[sud]='\40';
sud=sud+1;
}
// reclear
sud=(int)argufn;
linuwrn(2,8,16,can,sud);
can[53]='\15';
can[54]='\12';
// 155 terminal diagnostic 156
// fwrite(can,1,80,stdout);
caap[0] = &cdraw0[0];
caap[1] = &cdraw1[0];
caap[2] = &cdraw2[0];
caap[3] = &cdraw3[0];
sud=(int)(caap[0]);
linuwrn(2,8,16,can,sud);
sud=(int)(caap[1]);
linuwrn(12,8,16,can,sud);
sud=(int)(caap[2]);
linuwrn(22,8,16,can,sud);
sud=(int)(caap[3]);
linuwrn(32,8,16,can,sud);
can[53]='\15';
can[54]='\12';
// 171 terminal diagnostic 172 exit 173
// fwrite(can,1,80,stdout);
sud=0;
while(sud < 200)
{
can[sud]='\40';
sud=sud+1;
}
// reclear
sud=41;
while(sud < 46)
{
iiac[sud]=0;
sud=sud+1;
}
if(argd == 2)
{
argufn = *(argsa + 1);
xilop=0;
sud=ombrlen(0,0,argufn);
if((sud > 4)&&(sud < 40))
{
while(xilop < sud)
{
can[160+xilop] = *(argufn + xilop);
can[120+xilop] = *(argufn + xilop);
can[80+xilop] = *(argufn + xilop);
can[40+xilop] = *(argufn + xilop);
can[xilop] = *(argufn + xilop);
xilop=xilop+1;
}
iiac[45]=1;
iiac[44]=1;
}
}
lpdis = XOpenDisplay(adn);
scnum=DefaultScreen(lpdis);
scrdepth=DefaultDepth(lpdis,scnum);
iiac[7]=608;
iiac[29]=378;
iiac[30]=11829;
iiac[25]=0;
iiac[28]=5;
iiac[34]=160;
iiac[32]=scrdepth;
sud=0;
iktmany(jxwkeyhold);
xilop=fourbump(caap,iiac,bar,bab,caf,can);
wix = makexw(rsizehints,rwmhints,rclasshints);
// ----------------------------------------
XSetWMProperties(lpdis,wix,0,0,argsa,argd,rsizehints,
rwmhints,rclasshints);
// ----------------------------------------------------
getgc(wix,&bgc,scrdepth,0);
getgc(wix,&wgc,scrdepth,1);
getgc(wix,&xgc,scrdepth,17);
getgc(wix,&ygc,scrdepth,18);
getgc(wix,&zgc,scrdepth,19);
getgc(wix,&agc,scrdepth,20);
XMapWindow(lpdis,wix);
xolop=0;
while(xolop == 0)
{
XNextEvent(lpdis,&report);
// depth = 2
if(report.type == KeyRelease)
{
if((int)report.xkey.keycode==xxsv)sud=0;
if((int)report.xkey.keycode==xsv)sud=0;
}
if(report.type == KeyPress)
{
zandtogm=1;
if((int)report.xkey.keycode==xxsv)zandtogm=0;
if((int)report.xkey.keycode==xsv)zandtogm=0;
if(zandtogm == 0)sud=1;
if(zandtogm == 1)
{
// xilop == 0 for normal
xilop=0;
ckey=report.xkey.keycode;
// depth = 4
rjkey=iidoskey(ckey,sud,jxwkeyhold,"x");
iiac[26]=rjkey;
iiac[27]=ckey;
if(xilop == 0)xilop=fourbump(caap,iiac,bar,bab,caf,can);
// high speed print to screen top monochrome high speed 2
rempmap = XCreatePixmap(lpdis,wix,(iiac[7]),(iiac[29]),
scrdepth);
tempmap3 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw3,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,0),scrdepth);
XCopyArea(lpdis,tempmap3,rempmap,agc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
tempmap2 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw2,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap2,rempmap,xgc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap1 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw1,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap1,rempmap,ygc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap0 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw0,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap0,rempmap,zgc,0,0,(iiac[7]),
(iiac[29]),0,0);
}
XCopyArea(lpdis,rempmap,wix,wgc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
XFreePixmap(lpdis,tempmap0);
XFreePixmap(lpdis,tempmap1);
XFreePixmap(lpdis,tempmap2);
}
XFreePixmap(lpdis,tempmap3);
XFreePixmap(lpdis,rempmap);
// print page to screen bottom high speed
if((iiac[30]) == 11832)xolop = 1;
}
}
// end of keypress
// depth = 2
if(report.type == Expose)
{
if(report.xexpose.count == 0)
{
xilop=0;
// high speed print to screen top monochrome high speed 2
rempmap = XCreatePixmap(lpdis,wix,(iiac[7]),(iiac[29]),
scrdepth);
tempmap3 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw3,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,0),scrdepth);
XCopyArea(lpdis,tempmap3,rempmap,agc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
tempmap2 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw2,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap2,rempmap,xgc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap1 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw1,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap1,rempmap,ygc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap0 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw0,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap0,rempmap,zgc,0,0,(iiac[7]),
(iiac[29]),0,0);
}
XCopyArea(lpdis,rempmap,wix,wgc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
XFreePixmap(lpdis,tempmap0);
XFreePixmap(lpdis,tempmap1);
XFreePixmap(lpdis,tempmap2);
}
XFreePixmap(lpdis,tempmap3);
XFreePixmap(lpdis,rempmap);
// print page to screen bottom high speed
}
}
if(report.type == ButtonPress)
{
xilop=0;
if((iiac[28]) == 5)
{
lmoux=report.xbutton.x;
lmouy=report.xbutton.y;
iiac[26]=0;
iiac[27]=381924;
xilop=0;
if(xilop == 0)xilop=fourbump(caap,iiac,bar,bab,caf,can);
// high speed print to screen top monochrome high speed 2
rempmap = XCreatePixmap(lpdis,wix,(iiac[7]),(iiac[29]),
scrdepth);
tempmap3 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw3,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,0),scrdepth);
XCopyArea(lpdis,tempmap3,rempmap,agc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
tempmap2 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw2,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap2,rempmap,xgc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap1 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw1,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap1,rempmap,ygc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap0 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw0,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap0,rempmap,zgc,0,0,(iiac[7]),
(iiac[29]),0,0);
}
XCopyArea(lpdis,rempmap,wix,wgc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
XFreePixmap(lpdis,tempmap0);
XFreePixmap(lpdis,tempmap1);
XFreePixmap(lpdis,tempmap2);
}
XFreePixmap(lpdis,tempmap3);
XFreePixmap(lpdis,rempmap);
// print page to screen bottom high speed
lmoux=131072;
lmouy=131072;
}
// depth = 3
}
if(report.type == ConfigureNotify)
{
iiac[7] = report.xconfigure.width;
// 0353 set xilop below to eight or number of bits quanwid
xilop=8;
// wrong iiac[29] = (xilop * (iiac[7])) + (xilop - 1);
// wrong iiac[7]=divmodi((iiac[29]),xilop,0);
iiac[29]=divmodi(((iiac[7])+(xilop-1)),xilop,0);
iiac[7]=xilop*iiac[29];
// restore 29 height
iiac[29] = report.xconfigure.height;
xilop=1;
// xilop == 0 to update display after configure notify
xilop=0;
// no key available here ckey=report.xkey.keycode;
// nothing here rjkey=iidoskey(ckey,sud,jxwkeyhold,"x");
// iiac[26]=rjkey;
// iiac[27]=ckey;
iiac[26]=0;
// scince no real key set apparent translated key to 0
iiac[27]=262143;
// scince no raw key set number too large to display
// configure notify does not really provide a valid key
if(xilop == 0)xilop=fourbump(caap,iiac,bar,bab,caf,can);
// high speed print to screen top monochrome high speed 2
// high speed print to screen top monochrome high speed 2
rempmap = XCreatePixmap(lpdis,wix,(iiac[7]),(iiac[29]),
scrdepth);
tempmap3 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw3,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,0),scrdepth);
XCopyArea(lpdis,tempmap3,rempmap,agc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
tempmap2 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw2,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap2,rempmap,xgc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap1 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw1,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap1,rempmap,ygc,0,0,(iiac[7]),
(iiac[29]),0,0);
tempmap0 = XCreatePixmapFromBitmapData(lpdis,wix,cdraw0,
(iiac[7]),(iiac[29]),gcbw(scrdepth,15),
gcbw(scrdepth,12),scrdepth);
XCopyArea(lpdis,tempmap0,rempmap,zgc,0,0,(iiac[7]),
(iiac[29]),0,0);
}
XCopyArea(lpdis,rempmap,wix,wgc,0,0,(iiac[7]),
(iiac[29]),0,0);
if((iiac[6]) > 1)
{
XFreePixmap(lpdis,tempmap0);
XFreePixmap(lpdis,tempmap1);
XFreePixmap(lpdis,tempmap2);
}
XFreePixmap(lpdis,tempmap3);
XFreePixmap(lpdis,rempmap);
// print page to screen bottom high speed
// print page to screen bottom high speed
}
}
// end while
// XFreeGC(lpdis,agc);
// XFreeGC(bgc);
// XFreeGC(wgc);
// XFreeGC(xgc);
// XFreeGC(ygc);
// XFreeGC(zgc);
return 0;
}
// end of main
// --------------------------------------------- 90
// ----------------------------------------------
int gcbw(int gcdepth,int gca)
{
int gcbr;
// gca is 0 12 14 15
// colors black darkgrey grey white
// gca is 4 2 1 R B G
// large plane masks 16 allplanes
gcbr=0;
if(gcdepth == 2)
{
if(gca == 0)gcbr=0;
if(gca == 1)gcbr=1;
if(gca == 2)gcbr=1;
if(gca == 4)gcbr=1;
if(gca == 12)gcbr=0;
if(gca == 14)gcbr=1;
if(gca == 15)gcbr=1;
if(gca == 16)gcbr=1;
}
// if(gcdepth == 4)
// {
// depth of 4 is not supported in this
// extended grey greyscale version.
// if(gca == 0)gcbr=0;
// if(gca == 1)gcbr=1;
// if(gca == 2)gcbr=2;
// if(gca == 4)gcbr=4;
// if(gca == 12)gcbr=0;
// if(gca == 14)gcbr=7;
// if(gca == 15)gcbr=15;
// if(gca == 16)gcbr=16;
// }
if(gcdepth == 8)
{
if(gca == 0)gcbr=0;
// if(gca == 1)gcbr=3;
// if(gca == 2)gcbr=28;
// if(gca == 4)gcbr=224;
if(gca == 1)gcbr=36 * redcst(1,3,2,"001");
if(gca == 2)gcbr=36 * redcst(1,3,2,"010");
if(gca == 4)gcbr=36 * redcst(1,3,2,"100");
if(gca == 12)gcbr=0;
if(gca == 14)gcbr=3;
if(gca == 15)gcbr=255;
if(gca == 16)gcbr=255;
}
if(gcdepth == 24)
{
if(gca == 0)gcbr=0;
// if(gca == 1)gcbr=255;
// if(gca == 2)gcbr=65280;
// if(gca == 4)gcbr=16711680;
if(gca == 1)gcbr=65793 * redcst(1,8,2,"00011000");
if(gca == 2)gcbr=65793 * redcst(1,8,2,"00100100");
if(gca == 4)gcbr=65793 * redcst(1,8,2,"01000010");
// if(gca == 12)gcbr=4144959;
// if(gca == 12)gcbr=3947580;
if(gca == 12)gcbr=0;
// if(gca == 14)gcbr=8355711;
// 14 to 65793 * (127 or 126)
// if(gca == 14)gcbr=8289918;
if(gca == 14)gcbr=65793 * redcst(1,8,2,"10000001");
if(gca == 15)gcbr=16777215;
if(gca == 16)gcbr=16777215;
}
return gcbr;
}
void getgc(Window wigc,GC* wrgc,int gsdepth,int azbnzw)
{
unsigned long vgcmask=0;
XGCValues vgcvalues;
int zbnzw;
unsigned int gclw=1;
int linestyle=LineSolid;
int capstyle=CapRound;
int joinstyle=JoinRound;
int fillstyle=FillSolid;
zbnzw=65;
if(azbnzw == 1)zbnzw=1;
if(azbnzw == 0)zbnzw=0;
if(azbnzw == 17)zbnzw=17;
if(azbnzw == 18)zbnzw=18;
if(azbnzw == 19)zbnzw=19;
if(azbnzw == 20)zbnzw=20;
*wrgc=XCreateGC(lpdis,wigc,vgcmask,&vgcvalues);
XSetLineAttributes(lpdis,*wrgc,gclw,linestyle,capstyle,
joinstyle);
// XSetBackground(lpdis,*wrgc,WhitePixel(lpdis,scnum));
XSetFillStyle(lpdis,*wrgc,fillstyle);
if(zbnzw == 0)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 0)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 1)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 1)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 17)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 17)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 18)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 18)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 19)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 19)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 20)XSetBackground(lpdis,*wrgc,
gcbw(gsdepth,0));
if(zbnzw == 20)XSetForeground(lpdis,*wrgc,
gcbw(gsdepth,15));
if(zbnzw == 0)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,16));
if(zbnzw == 1)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,16));
if(zbnzw == 17)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,4));
if(zbnzw == 18)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,2));
if(zbnzw == 19)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,1));
if(zbnzw == 20)XSetPlaneMask(lpdis,*wrgc,gcbw(gsdepth,16));
}
// end of getgc(Window,GC*,int);
Window makexw(XSizeHints* sizehints,XWMHints* wmhints,
XClassHint* classhints)
{
int sbmask;
Window trix;
trix=XCreateSimpleWindow(lpdis,RootWindow(lpdis,scnum),
0,0,608,378,4,
BlackPixel(lpdis,scnum),WhitePixel(lpdis,scnum));
sud=0;
sizehints = XAllocSizeHints();
wmhints = XAllocWMHints();
classhints = XAllocClassHint();
(*(wmhints)).initial_state=NormalState;
(*(wmhints)).input = True;
(*(wmhints)).icon_pixmap = 0;
(*(wmhints)).flags = StateHint | InputHint ;
(*(classhints)).res_name = 0;
(*(classhints)).res_class = "Basicwin";
(*(sizehints)).flags = PPosition | PSize | PMinSize ;
(*(sizehints)).min_width = 592;
(*(sizehints)).min_height = 334;
sbmask = 0;
sbmask = sbmask | KeyPressMask;
sbmask = sbmask | KeyReleaseMask;
sbmask = sbmask | ExposureMask;
sbmask = sbmask | StructureNotifyMask;
sbmask = sbmask | ButtonPressMask;
XSelectInput(lpdis,trix,sbmask);
return trix;
}
// ------------- bottom of windowmake
void ilinemake(int* iixt,char* xxdd)
{
int xsspos,xssmany,xssbase,xssctr,xsssub,xsstw;
int xssterm,xtssub;
// xsspos 999 xssbase-1 F xssmany 99 xsstw 9
// 9 f 5
xsspos=redcst(1,3,10,xxdd);
xssbase=redcst(4,1,16,xxdd);
xssmany=redcst(5,2,10,xxdd);
xssctr=0;
if((xssbase == 9)||(xssbase == 15))
{
xsstw = redcst(7,1,16,xxdd);
while(xssctr < xssmany)
{
xsssub = (xssctr * xsstw) + 8;
xtssub = xssctr + xsspos;
xssterm = redcst(xsssub,xsstw,(xssbase + 1),xxdd);
*(iixt + xtssub) = xssterm;
xssctr=xssctr+1;
}
}
if(xssbase == 5)
{
while(xssctr < xssmany)
{
xsssub = xssctr + 6;
xtssub = xssctr + xsspos;
xssterm = (int)(*(xxdd + xsssub));
*(iixt + xtssub)=xssterm;
xssctr = xssctr+1;
}
}
}
void iktmany(int* imxt)
{
int iktmanyctr;
iktmanyctr=0;
while(iktmanyctr < 512)
{
*(imxt + iktmanyctr)=131065;
iktmanyctr=iktmanyctr+1;
}
// -------------------------------------------
ilinemake(imxt,"079F0423738392D");
ilinemake(imxt,"083F0423435362B");
ilinemake(imxt,"087F052313233302E");
ilinemake(imxt,"097F04324724824924B");
ilinemake(imxt,"102F06324D24F250251252253");
// -------------------------------------------
ilinemake(imxt,"063F0122A");
ilinemake(imxt,"112F0122F");
ilinemake(imxt,"050F01210");
ilinemake(imxt,"062901216");
ilinemake(imxt,"022F01208");
ilinemake(imxt,"009F0121B");
ilinemake(imxt,"023F01209");
// --
ilinemake(imxt,"0105101234567890");
ilinemake(imxt,"024510qwertyuiop");
ilinemake(imxt,"038509asdfghjkl");
ilinemake(imxt,"052507zxcvbnm");
// --
ilinemake(imxt,"0369013013");
ilinemake(imxt,"108F0120D");
ilinemake(imxt,"0659013032");
ilinemake(imxt,"020F0222D3D");
ilinemake(imxt,"051F0125C");
ilinemake(imxt,"034F0225B5D");
ilinemake(imxt,"047F0223B27");
ilinemake(imxt,"059F0322C2E2F");
ilinemake(imxt,"049F01260");
// ----------------------------------------------------
ilinemake(imxt,"305F0127E");
ilinemake(imxt,"2669103033064035036037094038042040041");
ilinemake(imxt,"280510QWERTYUIOP");
ilinemake(imxt,"294509ASDFGHJKL");
ilinemake(imxt,"308507ZXCVBNM");
// -------------
ilinemake(imxt,"276F0225F2B");
ilinemake(imxt,"307F0127C");
ilinemake(imxt,"290F0227B7D");
ilinemake(imxt,"303F0223A22");
ilinemake(imxt,"315F0323C3E3F");
// --
}
// LINUX KEYBOARD TRANSLATOR TOP
// lreadc redcst
// need xxkeyhold next
int iidoskey(int kkll,int kshiftb,int ixkeyhold[],
const char* klinuxcm)
{
int klinuxmm,zandtogi;
int lidoskrs,lidoslr;
int wasdkeyused;
// x=120 v=118
char clinuxcm;
clinuxcm = *klinuxcm;
klinuxmm = (int)clinuxcm;
lidoskrs=131072;
wasdkeyused=0;
if(klinuxmm == 120)
{
lidoslr = kkll;
if((lidoslr >= 0)&&(lidoslr < 256))
{
if(kshiftb == 1)lidoslr=kkll+256;
lidoskrs = ixkeyhold[lidoslr];
wasdkeyused=1;
}
}
if(klinuxmm == 118)
{
// klinuxcm == "v" for int vga_getkey() within <vga.h>
zandtogi=1;
if(kkll < redcst(1,2,16,"00"))zandtogi=0;
if(kkll > redcst(1,2,16,"7E"))zandtogi=0;
if(zandtogi == 1)
{
lidoskrs=kkll;
}
if(kkll == redcst(1,2,16,"7F"))lidoskrs=8;
// -----------------------------------------------------
if(kkll == redcst(1,8,16,"1B5B317E"))lidoskrs=512+71;
if(kkll == redcst(1,8,16,"001B5B41"))lidoskrs=512+72;
if(kkll == redcst(1,8,16,"1B5B357E"))lidoskrs=512+73;
if(kkll == redcst(1,8,16,"001B5B44"))lidoskrs=512+75;
if(kkll == redcst(1,8,16,"001B5B43"))lidoskrs=512+77;
if(kkll == redcst(1,8,16,"1B5B347E"))lidoskrs=512+79;
if(kkll == redcst(1,8,16,"001B5B42"))lidoskrs=512+80;
if(kkll == redcst(1,8,16,"1B5B367E"))lidoskrs=512+81;
if(kkll == redcst(1,8,16,"1B5B327E"))lidoskrs=512+82;
if(kkll == redcst(1,8,16,"1B5B337E"))lidoskrs=512+83;
// -----------------------------------------------------
wasdkeyused=1;
}
if(wasdkeyused == 0)lidoskrs=klinuxmm;
return lidoskrs;
}
// end of int iidoskey(int,int,int[],const char*)
// ------------------------------------------------------
// system dependent above this line ----------------------
// --------------------------------- proposed declarations
// int divmodi(int inumer,int idenom,int nzirem);
// int onexwchr(int xwcpos,char xwclist[]);
// void chrfroms(int chfstart,int chfsize,char xvclist[],
// const char* xvslist);
// int onexwdig(int xwdpos,char xwdlist[]);
// int ixreada(int iarpos,int iarwid,int iarbase,
// int nziarnext,char iarlist[]);
// int revercram(int rcstart,int rcmany,char revdat[]);
// void linuwrn(int lwrnpos,int lwrnwid,int lwrnbase,
// char lwrt[],int lwrf);
// void uncram(int ucstart,int ucmany,char ucdat[],
// int ucfrom);
// int ombrlen(int ombrloffset,int ombmaxlen,
// char ombuksize[]);
// int nzlinedone(int lkbc[],char reekline[]);
// int redcst(int llrs,int llrw,int llrbase,
// const char* llccs);
// ----------------------------------------------------
// -- void bitpoke(char btt[],int hds,int twi,int bx,
// -- int by,int pznorm,int bvbw);
// void bitwrt(char bde[],int ski,int wwi,int wx,int wy,
// int zltr,int wwvb);
// void printstr(char psb[],int psw,int pst,char psf[],
// int pstrw,char pstr[]);
// int lscale(int lscabc[]);
// int lredoffs(int lrosbc[]);
// int lctsize(int lctsbc[]);
// int lpixperb(int lpixprbc[]);
// int lbytespr(int lbprbc[],int nzlbprem);
// int lbreadf(int lbreadbc[],char lbrecord[],
// int lbreadw,FILE* lbreadh);
// int nzreadmbhdr(int nzrhbc[],char nzrhrecord[],
// char rhctble[],FILE* nzrhh);
// int xwtscroll(int xscbc[],char xscsingle[],
// char xscgroup[]);
// void zackreadbw(int rpbc[],char rprec[],char rpct[],
// char rpbig[],FILE* rph);
// void getpine(int gpbc[],char gprec[],char gpct[],
// char gpbig[],FILE* gph);
// int nonbambi(char** iibplane,int nbbc[],char nbbig[]);
// int putpine(char** iirplane,int irplane[],
// int vpthresh[],char vpbig[]);
// int onebumpw(char** ijplane,int onbbc[],
// char ombrecord[],char ombgbig[]);
// int twobumpw(char** tjple,int tmbc[],char tmbr[],
// char tbig[],char tbf[]);
// int twobuz(char** zpl,int zbc[],char zrc[],
// char zb[],char zf[],char zn[]);
// int fourbump(char** aap,int ac[],
// char ar[],char ab[],char af[],
// char an[]);
// void fonthfill(char fhf[]);
// int nzextcmp(char* uncfn,char* ecright);
// -------------------
// 32 bit integer subroutines for Linux
int divmodi(int inumer,int idenom,int nzirem)
{
int idmres,ifrac,irem,iprod;
irem=0-2;
ifrac=inumer / idenom;
while(irem < 0)
{
iprod=ifrac * idenom;
irem = inumer - iprod;
if(irem < 0)ifrac=ifrac-1;
}
idmres=ifrac;
if(nzirem > 0)idmres=irem;
return idmres;
}
int onexwchr(int xwcpos,char xwclist[])
{
int onexwres;
char onexwtcr;
onexwtcr = xwclist[xwcpos];
onexwres = (int)onexwtcr;
if(onexwres < 0)onexwres = onexwres + 256;
return onexwres;
}
void chrfroms(int chfstart,int chfsize,char xvclist[],
const char* xvslist)
{
int chfctr,chfallow;
char chftcr;
chfctr=0;
chfallow=1;
while(chfallow > 0)
{
chftcr = *(xvslist + chfctr);
if(chftcr == '!')chfallow = 0;
if(chftcr == '$')chfallow = 0;
if(chfctr >= chfsize)chfallow = 0;
if(chfallow > 0)
{
xvclist[chfstart + chfctr]=chftcr;
chfctr=chfctr+1;
}
}
// depth = 1
chftcr = '\40';
chfallow = 0;
if(chfctr < chfsize)
{
chfallow = 1;
while(chfallow > 0)
{
if(chfctr >= chfsize)chfallow=0;
if(chfallow > 0)
{
xvclist[chfstart + chfctr]=chftcr;
// depth = 4
chfctr=chfctr+1;
}
}
}
}
// end of chrfroms;
int onexwdig(int xwdpos,char xwdlist[])
{
int xwdires,xwdicmp;
xwdires=127;
xwdicmp = onexwchr(xwdpos,xwdlist);
if((xwdicmp>=97)&&(xwdicmp<=102))xwdires=xwdicmp-87;
if((xwdicmp>=65)&&(xwdicmp<=70))xwdires=xwdicmp-55;
if((xwdicmp>=48)&&(xwdicmp<=57))xwdires=xwdicmp-48;
return xwdires;
}
int ixreada(int iarpos,int iarwid,int iarbase,
int nziarnext,char iarlist[])
{
int iarctr,iarallow,iarsub,ixreadr,ixreadt;
iarctr=0;
iarallow = 1;
ixreadr=0;
while(iarallow > 0)
{
iarsub = iarpos + iarctr - 1;
ixreadt = onexwdig(iarsub,iarlist);
if(ixreadt < iarbase)iarallow=0;
if(iarallow > 0)
{
iarctr = iarctr + 1;
if(iarctr >= iarwid)iarallow = 0;
}
}
// depth = 1
iarallow = 0;
if(iarctr < iarwid)
{
iarallow = 1;
while(iarallow > 0)
{
iarsub=iarpos+iarctr-1;
ixreadt = onexwdig(iarsub,iarlist);
if(ixreadt >= iarbase)iarallow=0;
if(iarallow > 0)
{
ixreadr=ixreadr*iarbase;
ixreadr=ixreadr+ixreadt;
iarctr=iarctr+1;
if(iarctr >= iarwid)iarallow=0;
}
}
}
// depth = 1
if(nziarnext > 0)ixreadr=iarpos+iarctr;
return ixreadr;
}
int revercram(int rcstart,int rcmany,char revdat[])
{
int revnegind,crammedres,cramctr,cramsub;
int cramterm;
cramsub=rcstart+rcmany-1;
revnegind=0;
cramterm=onexwchr(cramsub,revdat);
crammedres=0;
if((cramterm > 127)&&(rcmany > 3))revnegind=1;
cramctr=rcmany;
while(cramctr > 0)
{
cramsub = rcstart + cramctr -1;
cramterm=onexwchr(cramsub,revdat);
if(revnegind==1)cramterm=255-onexwchr(cramsub,revdat);
crammedres=crammedres*256;
crammedres=crammedres+cramterm;
cramctr=cramctr - 1;
}
if(revnegind == 1)crammedres=(0-1)-crammedres;
return crammedres;
}
void linuwrn(int lwrnpos,int lwrnwid,int lwrnbase,
char lwrt[],int lwrf)
{
int lwrnsub;
int lwrneg,lwrnterm,lwrnctr,lwrntop;
lwrneg=0;
lwrntop=lwrf;
if(lwrf < 0)lwrneg=1;
if(lwrneg == 1)lwrntop=0-(lwrf+1);
lwrnctr=lwrnwid-1;
while(lwrnctr >= 0)
{
lwrnsub=lwrnctr+lwrnpos-1;
lwrnterm=divmodi(lwrntop,lwrnbase,1);
lwrntop=divmodi(lwrntop,lwrnbase,0);
if(lwrneg == 1)lwrnterm=(lwrnbase-1)-lwrnterm;
lwrnterm=lwrnterm+48;
if(lwrnterm > 57)lwrnterm=lwrnterm+39;
lwrt[lwrnsub]=(char)lwrnterm;
lwrnctr=lwrnctr+1;
// *** ERROR *** incrementing instead of needed
// decrementing above
// *** ERROR *** above mistke was hidden
// and hard to find
// attempting fix below
lwrnctr=lwrnctr-2;
}
}
void uncram(int ucstart,int ucmany,char ucdat[],
int ucfrom)
{
int ctruc,uctop,ucneg,ucsub,uccdig;
ucneg=0;
uctop=ucfrom;
if(ucfrom < 0)
{
uctop = 0 - (ucfrom + 1);
ucneg = 1;
}
ctruc = 0;
while(ctruc < ucmany)
{
uccdig=divmodi(uctop,256,1);
uctop=divmodi(uctop,256,0);
ucsub=ctruc+ucstart;
if(ucneg == 1)uccdig=255-uccdig;
if(uccdig > 127)uccdig = uccdig - 256;
ucdat[ucsub]=(char)uccdig;
ctruc=ctruc + 1;
}
}
int ombrlen(int ombrloffset,int ombmaxlen,
char ombuksize[])
{
int ombclen,omblelow,omblent,nextlelow;
ombclen=ombmaxlen;
omblelow=1;
if(ombmaxlen > 0)
{
while(omblelow > 0)
{
omblent=onexwchr((ombrloffset+ombclen-1),ombuksize);
nextlelow=0;
if(omblent == 0)nextlelow=1;
if(omblent == 32)nextlelow=1;
if(nextlelow == 0)omblelow=0;
if(omblelow > 0)
{
ombclen=ombclen-1;
if(ombclen < 1)omblelow=0;
}
}
}
if(ombmaxlen == 0)
{
ombclen=0;
while(omblelow > 0)
{
omblent=onexwchr((ombrloffset + ombclen),ombuksize);
nextlelow=1;
if(omblent == 0)nextlelow=0;
if(omblent == 32)nextlelow=0;
if(omblent == 33)nextlelow=0;
if(nextlelow == 0)omblelow=0;
if(nextlelow > 0)ombclen=ombclen+1;
if(ombclen > 71)omblelow=0;
}
}
return ombclen;
}
// end of ombrlen
int nzlinedone(int lkbc[],char reekline[])
{
int nzlineres,nzlinectr,nzldcmp,nzlinebase;
nzlinebase=lkbc[34];
nzlinectr=lkbc[25];
nzlineres=0;
if(nzlinectr == 0)
{
while(nzlineres < 40)
{
reekline[nzlineres+nzlinebase]='\040';
nzlineres=nzlineres+1;
}
}
nzlineres=0;
nzldcmp=lkbc[26];
if((nzldcmp == 8)&&(nzlinectr>0))nzlinectr=nzlinectr-1;
if((nzldcmp > 31)&&(nzldcmp < 126))
{
reekline[nzlinectr+nzlinebase]=(char)nzldcmp;
nzlinectr=nzlinectr+1;
}
if((nzldcmp == 10)||(nzldcmp == 13))nzlineres=1;
lkbc[25]=nzlinectr;
if(nzlinectr > 38)nzlineres=1;
return nzlineres;
}
// end of nzlinedone
int redcst(int llrs,int llrw,int llrbase,
const char* llccs)
{
int yellowcst;
char redcharb[80];
chrfroms(0,(llrw+llrs-1),redcharb,llccs);
yellowcst = ixreada(llrs,llrw,llrbase,0,redcharb);
return yellowcst;
}
// end of redcst
// end of Linux integer char subroutines
// bitmap using subroutines
// .................................................
// Applications programs that are written for Linux
// use the following
// simplified bitmap header for device independent bitmaps
// location length
// 000 00 02 cstMBcmp value 19778 M=77 B=66 2
// 002 02 16 skipped
// 018 12 04 biwidth in pixels 4
// 022 16 04 biheight in pixels 4
// 026 1A 02 skip was biplanes set to 0001
// 028 1C 02 bibitcount = { 1,4,8,24 } 2
// 030 1E 04 Zero if no compression. 4
// 034 22 12 skipper
// 046 2E 04 biclrused number of colors if > 0 4
// && [1C]==8 x
// 050 32 04 skippable
// 054 36 ((2^[1C])*4)(or 0 for [1C]==24) colortable
// with bgr0 entries
// if([1C]==1)len=8
// if([1C]==4)len=64
// 062 3E start of monochrome bitmap
// 118 76 start of VGA 4 bit color bitmap
// lines of pixels are left to right but upside down
// an extra skippable is added to end of each line to
// make each file line a multiple of four bytes
// ...................................................
// bitmap context integer array for
// some applications programs written for Linux
// requested output characteristics
// 00 destwid
// 01 desthgt
// 02 destx
// 03 desty
// 04 scale set to 0 then let bitmap compute it later
// 05 readmode 0=file 1=memory
// 06 colormode 1=decreaseincreasewithsyncedlimits
// 07 planewidth
// . . . . . . . . . . . . . . . . . .
// input characteristics from incoming bitmap
// 08 biwidth18
// 09 biheight22
// 10 bibitcount28
// 11 ifzerook30
// 12 biclrused46
// 13 isit19778
// ..
// 14 colortablesize
// 15 vfilepointer
// 16 bytesperrecord
// 17 skippedbytes
// 18 prinwid
// 19 prinleft
// 20 prinudy
// 21 prinhgt
// 22
// 23 prinprvpix
// 24 nzfilenamefinished
// 25 keyctr
// 26 keychar
// 27 rawkey
// 28 pagetofive
// 29 planehgt
// 30 dagrajumpnow
// 31 freddyisnext
// 32 screenDEPTH
// 33
// 34 curscrkeyoff
// 35 curscreenwrt
// 36
// 37
// 38
// 39 nzallfour
// 40
// 41 nzfn01
// 42 nzfn02
// 43 nzfn03
// 44 nzfn04
// 45 nzfn05
// 46
// 47
// 48
// 49
// 50
// 51 scrollctr
// 52 scrolllimit
// 53 scrollallow
// 54 scrolldir
// 55
// 56 picturesreadcounterlastdigit
// 57 previousscreen
// 58 th0
// 59 th1
// 60 th2
// 61 th3
// 62 th4
// 63 th5
// ------------------------------------------------------
// ----------------------------------------------------
// void bitpoke(char btt[],int hds,int twi,int bx,int by,
// int pznorm,int bvbw)
// {
// btt is destination monochrome bitmap
// or plane
// twi must be a
// multiple of 8
// hds is header size of 62
// when writing to bitmap
// bx and by are
// logical pixel coordinates
// twi is target width
// in pixels
// nonzero for backwards bits in target byte pznorm
// zero for dark pixel bvbw
// const int bporand[] = { 128,64,32,16,8,4,2,1,
// 1,2,4,8,16,32,64,128,
// 127,191,223,239,247,251,253,254,
// 254,253,251,247,239,223,191,127 };
// int iporand,dyrem,dyfrac,dyprod,tsub,tvalue;
// dyprod = (twi * by) + bx + (hds * 8);
// dyfrac = divmodi(dyprod,8,0);
// dyrem = divmodi(dyprod,8,1);
// tvalue = onexwchr(dyfrac,btt);
// if((bvbw == 0)&&(pznorm == 0))tsub=dyrem+16;
// if((bvbw == 0)&&(pznorm != 0))tsub=dyrem+24;
// if((bvbw != 0)&&(pznorm == 0))tsub=dyrem;
// if((bvbw != 0)&&(pznorm != 0))tsub=dyrem+8;
// iporand=bporand[tsub];
// if(bvbw == 0)tvalue = tvalue & iporand;
// if(bvbw != 0)tvalue = tvalue | iporand;
// if(tvalue > 127)tvalue = tvalue - 256;
// btt[dyfrac]=(char)tvalue;
// }
void bitwrt(char bde[],int ski,int wwi,int wx,int wy,
int zltr,int wwvb)
{
int wyprod,wyfrac,wyrem,wvalue;
// needs const int wporand[] = {128,64 ...
// bitwrt is supposed to be faster than bitpoke.
wyprod=(wwi * wy)+(ski << 3)+wx;
wyrem = wyprod & 7;
wyfrac = wyprod >> 3;
wvalue = onexwchr(wyfrac,bde);
if(wwvb == 0)
{
if(zltr == 0)wvalue=wvalue & wporand[wyrem + 16];
if(zltr != 0)wvalue=wvalue & wporand[wyrem + 24];
}
if(wwvb != 0)
{
if(zltr == 0)wvalue=wvalue | wporand[wyrem];
if(zltr != 0)wvalue=wvalue | wporand[wyrem + 8];
}
if(wvalue > 127)wvalue = wvalue - 256;
bde[wyfrac]=(char)wvalue;
}
// bottom of bitwrt
void printstr(char psb[],int psw,int pst,char psf[],
int pstrw,char pstr[])
{
int pswrrem,pswpx,pswcx,pswy,psevenctr,psfsub;
int pstrelem,pswright,pswline;
int pswpix,ponxsft,ponwid,ponysft,pondhgt,ponbhgt;
int ponahgt,ponaleft,ponbig;
int rponcurse,tinypst;
int psj,psuy;
const int pondspec[] = { 0,0,0,0,0,0,0,0,
1,7,2,13,14,16,7,0 };
if((pst >= 1000)&&(pst <= 1999))
{
rponcurse = divmodi(pst,1000,1)-1;
tinypst = divmodi(pst,1000,0)*8;
ponxsft = pondspec[tinypst];
ponwid = pondspec[tinypst + 1];
ponysft = pondspec[tinypst + 2];
pondhgt = pondspec[tinypst + 3];
ponbhgt = pondspec[tinypst + 4];
ponahgt = pondspec[tinypst + 5];
ponaleft = pondspec[tinypst + 6];
// depth = 2
ponbig = 1;
pswy = ponxsft + ponaleft;
pswcx=0;
while(pswcx < pswy)
{
ponbig=ponbig+ponbig;
pswcx=pswcx+1;
}
pswright=pstrw*ponwid;
// *** ERROR *** forgot to widen bitmap to next higher
// multiple of 32 pixels
// *** ERROR *** above error was hidden.
// making new variable psj with wider width below
psj = divmodi((psw+31),32,0)*32;
// -------------------------------
pswrrem=psj-pswright;
if(pswrrem > 0)
{
uncram(0,2,psb,19778);
uncram(18,4,psb,psw);
uncram(22,4,psb,ponbhgt);
uncram(28,2,psb,1);
uncram(30,4,psb,0);
uncram(46,4,psb,0);
uncram(54,4,psb,0);
uncram(58,4,psb,16777215);
// depth = 3
pswcx=0;
while(pswcx < pstrw)
{
pstrelem=onexwchr(pswcx,pstr);
pswy=0;
while(pswy < ponbhgt)
{
psevenctr=0;
psfsub = pswy + (ponahgt * pstrelem) + ponysft;
psuy=(ponbhgt - 1) - pswy;
pswline = (int)psf[psfsub];
while(psevenctr < ponwid)
{
pswpix=1;
pswline=pswline+pswline;
if(pswline >= ponbig)
{
pswline = pswline - ponbig;
pswpix=0;
}
pswpx=(pswcx * ponwid) + psevenctr;
// depth = 6
bitwrt(psb,62,psj,pswpx,psuy,0,pswpix);
psevenctr=psevenctr+1;
}
pswy=pswy+1;
}
if((ponxsft > 0)&&(pswcx == rponcurse))
{
pswy=0;
pswpix=1;
pswpx = pswcx * ponwid;
while(pswy < ponbhgt)
{
bitwrt(psb,62,psj,pswpx,((ponbhgt-1)-pswy),0,pswpix);
pswpix=1-pswpix;
pswy=pswy+1;
}
}
pswcx=pswcx+1;
}
// depth = 3
pswy=0;
while(pswy < ponbhgt)
{
pswpx=0;
pswpix=1;
psuy=(ponbhgt - 1)-pswy;
while(pswpx < pswrrem)
{
pswcx = pswpx + pswright;
bitwrt(psb,62,psj,pswcx,psuy,0,pswpix);
if(pswpx > 16)pswpix=0;
pswpx=pswpx+1;
}
pswy=pswy+1;
}
// depth = 3
}
}
}
// end of printstr
int lscale(int lscabc[])
{
int lscares,lscallow,lscawchk,lscahchk;
int zandtogl;
lscares=1;
lscallow=1;
while(lscallow > 0)
{
lscawchk = lscabc[0] * lscares;
lscahchk = lscabc[1] * lscares;
zandtogl = 1;
if(lscawchk < lscabc[8])zandtogl=0;
if(lscahchk < lscabc[9])zandtogl=0;
if(zandtogl == 1)lscallow=0;
if(lscallow > 0)
{
lscares=lscares+1;
if(lscares > 16383)lscallow=0;
}
}
return lscares;
// lscale returns factor by which to shrink picture
}
int lredoffs(int lrosbc[])
{
int lredoffr;
lredoffr=0;
if(lrosbc[5] > 0)lredoffr=lrosbc[15];
return lredoffr;
// lredoffs returns 0 for file read or
// virtualfilepointer value for memory read
}
int lctsize(int lctsbc[])
{
int lctsres,lctsterm,lctstrrm;
lctsres=0;
lctsterm=lctsbc[10];
lctstrrm=lctsbc[12];
if(lctsterm == 1)lctsres=2;
if(lctsterm == 4)lctsres=16;
if((lctsterm == 8)&&(lctstrrm == 0))lctsres=256;
if((lctsterm == 8)&&(lctstrrm > 0))lctsres=lctstrrm;
return lctsres;
// lctsize returns colortable size in
// four byte doublewords
}
int lpixperb(int lpixprbc[])
{
int lpixperes,lpixpercmp;
lpixpercmp = lpixprbc[10];
lpixperes=0;
if(lpixpercmp == 1)lpixperes=8;
if(lpixpercmp == 4)lpixperes=2;
if(lpixpercmp == 8)lpixperes=1;
return lpixperes;
// lpixperb returns pixels per byte if > 0 xor 3 bytes
// per pixel if return zero
}
int lbytespr(int lbprbc[],int nzlbprem)
{
int lbypres,lbyperb,lbyrnumer;
lbyperb=lpixperb(lbprbc);
if(lbyperb > 0)
{
lbyrnumer=lbprbc[8]+lbyperb-1;
lbypres=divmodi(lbyrnumer,lbyperb,0);
}
if(lbyperb == 0)lbypres = 3 * lbprbc[8];
if(nzlbprem > 0)
{
lbyrnumer=lbypres-(divmodi(lbypres,4,0)*4);
lbypres=0;
if(lbyrnumer > 0)lbypres=4-lbyrnumer;
}
return lbypres;
// returns lbypres bytes per record to make
// (one input line of pixels) if nzlbprem==0
// returns lbypres is number of skippable bytes
// after each line if arg 2 > 0
}
int lbreadf(int lbreadbc[],char lbrecord[],int lbreadw,
FILE* lbreadh)
{
int actreadwid,lbreadres;
if(lbreadw == 0)actreadwid=lbreadbc[16]+lbreadbc[17];
if(lbreadw > 0)actreadwid=lbreadw;
lbreadres=lbreadbc[15];
if(lbreadbc[5] == 0)
{
// read from a file
fread(lbrecord,actreadwid,1,lbreadh);
}
lbreadres=lbreadres+actreadwid;
// lbreadres is next value to put in [15]
// after call to lredoffs
return lbreadres;
}
int nzreadmbhdr(int nzrhbc[],char nzrhrecord[],
char rhctble[],FILE* nzrhh)
{
int nzrnext,nzrhres,nzrholop,nzrhilop,nzrhctsub;
int nzrhrase,nzrhcolsub;
int nzrhnext;
nzrnext=0;
nzrhbc[15]=nzrnext;
nzrhres=nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,2,nzrhh);
nzrhbc[13]=revercram(lredoffs(nzrhbc),2,nzrhrecord);
nzrhbc[15] = nzrnext;
if(nzrhbc[13] == 19778)
{
nzrhres=1;
// depth = 2
nzrnext=lbreadf(nzrhbc,nzrhrecord,16,nzrhh);
nzrhbc[15] = nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhbc[8] = revercram(lredoffs(nzrhbc),4,nzrhrecord);
nzrhbc[15] = nzrnext;
nzrnext = lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhbc[9] = revercram(lredoffs(nzrhbc),4,nzrhrecord);
nzrhbc[15] = nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,2,nzrhh);
nzrhbc[15] = nzrnext;
// ------------------------------------------------
nzrnext=lbreadf(nzrhbc,nzrhrecord,2,nzrhh);
nzrhbc[10] = revercram(lredoffs(nzrhbc),2,nzrhrecord);
nzrhbc[15] = nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhbc[11] = revercram(lredoffs(nzrhbc),4,nzrhrecord);
nzrhbc[15] = nzrnext;
if(nzrhbc[11] != 0)nzrhres=0;
nzrnext=lbreadf(nzrhbc,nzrhrecord,12,nzrhh);
nzrhbc[15]=nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhbc[12] = revercram(lredoffs(nzrhbc),4,nzrhrecord);
nzrhbc[15] = nzrnext;
nzrnext=lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhbc[15] = nzrnext;
if(nzrhbc[4] == 0)nzrhbc[4]=lscale(nzrhbc);
nzrhbc[14]=lctsize(nzrhbc);
nzrhbc[16]=lbytespr(nzrhbc,0);
nzrhbc[17]=lbytespr(nzrhbc,1);
// depth = 2
nzrhbc[18]=divmodi(nzrhbc[8],nzrhbc[4],0);
nzrhbc[21]=divmodi(nzrhbc[9],nzrhbc[4],0);
nzrhbc[20]=nzrhbc[21]-1;
nzrhbc[19]=nzrhbc[0]-nzrhbc[18];
nzrholop=0;
while(nzrholop < nzrhbc[14])
{
nzrhnext=lbreadf(nzrhbc,nzrhrecord,4,nzrhh);
nzrhrase=lredoffs(nzrhbc);
// depth = 3
nzrhbc[15] = nzrhnext;
nzrhilop=0;
while(nzrhilop < 4)
{
nzrhctsub=(nzrholop * 4) + nzrhilop;
nzrhcolsub = nzrhrase + nzrhilop;
rhctble[nzrhctsub] = nzrhrecord[nzrhcolsub];
// depth = 4
nzrhilop=nzrhilop+1;
}
nzrholop=nzrholop+1;
// depth = 3
}
// depth = 2
if((nzrhbc[8]*nzrhbc[4]*3)>=bigbuffsize)nzrhres=0;
}
// depth = 1
return nzrhres;
}
// end of nzreadmbhdr
int xwtscroll(int xscbc[],char xscsingle[],
char xscgroup[])
{
int xscres,xscilo,xscbase;
// 51 scrollctr 52 scrolllimit
// 53 scrollallow
// 54 scrolldir 0=save 1=get
xscbase=((xscbc[51]) + 1)*40;
xscres=0;
xscilo=0;
if(((xscbc[54]) == 0)&&((xscbc[51]) < (xscbc[52])))
{
while(xscilo < 40)
{
xscgroup[xscbase + xscilo] = xscsingle[xscilo];
xscilo=xscilo+1;
}
if((xscbc[53]) > 0)xscres=1;
if((xscbc[53]) > 0)xscbc[51]=xscbc[51]+1;
}
if(((xscbc[54]) == 1)&&((xscbc[51]) < (xscbc[52])))
{
while(xscilo < 40)
{
xscsingle[xscilo]=xscgroup[xscbase + xscilo];
xscilo=xscilo+1;
}
if((xscbc[53]) > 0)xscres=1;
if((xscbc[53]) > 0)xscbc[51]=xscbc[51]+1;
}
return xscres;
}
void zackreadbw(int rpbc[],char rprec[],char rpct[],
char rpbig[],FILE* rph)
{
int rpiterm,rbiwidth,rpscalelim,rpscalectr,rpdesrase;
int rbimain,rbirem,rbictr,rboctr,rpinext,rpirase;
char bamb0,bamb1,bamb2,bamw4,bamw5,bamw6;
rbiwidth=rpbc[8];
rpscalelim=rpbc[4];
rpdesrase=0;
bamb0=rpct[0];
bamb1=rpct[1];
bamb2=rpct[2];
bamw4=rpct[4];
bamw5=rpct[5];
bamw6=rpct[6];
rbimain=divmodi(rbiwidth,8,0);
rbirem=divmodi(rbiwidth,8,1);
rpscalectr=0;
while(rpscalectr < rpscalelim)
{
rpinext=lbreadf(rpbc,rprec,0,rph);
rpirase=lredoffs(rpbc);
rpbc[15]=rpinext;
rboctr=0;
while(rboctr < rbimain)
{
rpiterm=onexwchr((rpirase+rboctr),rprec);
// depth = 3
rbictr=0;
while(rbictr < 8)
{
rpiterm=rpiterm+rpiterm;
if(rpiterm <= 255)
{
rpbig[rpdesrase]=bamb0;
rpbig[rpdesrase+1]=bamb1;
rpbig[rpdesrase+2]=bamb2;
}
if(rpiterm > 255)
{
rpbig[rpdesrase]=bamw4;
rpbig[rpdesrase+1]=bamw5;
rpbig[rpdesrase+2]=bamw6;
rpiterm=rpiterm-256;
}
rpdesrase=rpdesrase+3;
rbictr=rbictr+1;
}
// depth = 3
rboctr=rboctr+1;
}
// depth = 2
rpiterm=onexwchr((rpirase+rbimain),rprec);
rbictr=0;
while(rbictr < rbirem)
{
// depth = 3
rpiterm=rpiterm+rpiterm;
if(rpiterm <= 255)
{
rpbig[rpdesrase]=bamb0;
rpbig[rpdesrase+1]=bamb1;
rpbig[rpdesrase+2]=bamb2;
}
if(rpiterm > 255)
{
rpbig[rpdesrase]=bamw4;
rpbig[rpdesrase+1]=bamw5;
rpbig[rpdesrase+2]=bamw6;
rpiterm=rpiterm-256;
}
rpdesrase=rpdesrase+3;
rbictr=rbictr+1;
}
// depth = 2
rpscalectr=rpscalectr+1;
}
}
// bottom of zackreadbw
void getpine(int gpbc[],char gprec[],char gpct[],
char gpbig[],FILE* gph)
{
int gbibitcount,hpixb,gpixctr,gbytectr;
int gbiwidth,ghmbytes,gpirase,gpinext;
int gpdesrase,gpeallow,gpscalelim,gpscalectr;
int gpctrase,gpilopctr,gpiterm,gpidenom,gpilopsub;
int gpints[8];
gbibitcount=gpbc[10];
hpixb=lpixperb(gpbc);
gbiwidth=gpbc[8];
ghmbytes=gpbc[16];
gpscalelim=gpbc[4];
gpdesrase=0;
gpscalectr=0;
// depth = 1
while(gpscalectr < gpscalelim)
{
gpinext=lbreadf(gpbc,gprec,0,gph);
// depth = 2
gpirase=lredoffs(gpbc);
gpbc[15]=gpinext;
gpixctr=0;
gbytectr=0;
gpeallow=1;
while(gpeallow > 0)
{
gpiterm=onexwchr((gpirase+gbytectr),gprec);
// depth = 3
if(gbibitcount < 9)
{
gpilopctr=hpixb;
if(gbibitcount == 1)gpidenom=2;
if(gbibitcount == 4)gpidenom=16;
if(gbibitcount == 8)gpidenom=256;
while(gpilopctr > 0)
{
gpilopsub=gpilopctr-1;
gpints[gpilopsub]=divmodi(gpiterm,gpidenom,1);
gpiterm=divmodi(gpiterm,gpidenom,0);
// depth = 5
gpilopctr=gpilopsub;
}
gpilopctr=0;
// depth = 4
while(gpilopctr < hpixb)
{
if(gpeallow > 0)
{
gpctrase=gpints[gpilopctr]*4;
gpbig[gpdesrase]=gpct[gpctrase];
// depth = 6
gpbig[gpdesrase+1]=gpct[gpctrase+1];
gpbig[gpdesrase+2]=gpct[gpctrase+2];
gpdesrase=gpdesrase+3;
gpixctr=gpixctr+1;
if(gpixctr >= gbiwidth)gpeallow=0;
}
// *** ERROR *** initial paperwork forgot to increment
// gpilopctr like next
gpilopctr=gpilopctr+1;
}
gbytectr=gbytectr+1;
}
// depth = 3
if((gbibitcount == 24)&&(gpeallow > 0))
{
gpbig[gpdesrase]=gprec[gpirase+gbytectr];
gpbig[gpdesrase+1]=gprec[gpirase+gbytectr+1];
// depth = 4
gpbig[gpdesrase+2]=gprec[gpirase+gbytectr+2];
gpdesrase=gpdesrase+3;
gpixctr=gpixctr+1;
if(gpixctr >= gbiwidth)gpeallow=0;
gbytectr=gbytectr+3;
}
if(gbytectr >= ghmbytes)gpeallow=0;
}
// depth = 2
gpscalectr=gpscalectr+1;
}
}
// end of getpine
int nonbambi(char** iibplane,int nbbc[],char nbbig[])
{
// need new char* nbplane
int putbambi,bamby,bambx,bambwid,bambplat,bambictr;
int bambilimit;
char* nbplane0;
char* nbplane1;
char* nbplane2;
char* nbplane3;
char bambk,bamwh;
nbplane0 = *(iibplane + 0);
nbplane1 = *(iibplane + 1);
nbplane2 = *(iibplane + 2);
nbplane3 = *(iibplane + 3);
// 1538 indirects at 1534 thru 1537
putbambi=0-1;
bamwh=(char)putbambi;
bambk='\0';
if(((nbbc[20]) >= 0)&&((nbbc[20]) < (nbbc[21])))
{
putbambi=nbbc[20]-1;
bambilimit=(nbbc[18])*3;
bamby=nbbc[20]+nbbc[3];
bambx=nbbc[2]-1;
bambwid=nbbc[7];
bambictr=0;
while(bambictr < bambilimit)
{
bambx=bambx+1;
if((nbbig[bambictr + 1]) == bambk)
{
bitwrt(nbplane3,0,bambwid,bambx,bamby,1,0);
if((nbbc[6]) > 1)
{
bitwrt(nbplane2,0,bambwid,bambx,bamby,1,0);
bitwrt(nbplane1,0,bambwid,bambx,bamby,1,0);
bitwrt(nbplane0,0,bambwid,bambx,bamby,1,0);
}
}
if((nbbig[bambictr + 1]) == bamwh)
{
bitwrt(nbplane3,0,bambwid,bambx,bamby,1,1);
if((nbbc[6]) > 1)
{
bitwrt(nbplane2,0,bambwid,bambx,bamby,1,1);
bitwrt(nbplane1,0,bambwid,bambx,bamby,1,1);
bitwrt(nbplane0,0,bambwid,bambx,bamby,1,1);
}
}
bambictr=bambictr+3;
}
bambplat=bambx+1;
bambilimit=nbbc[18]-bambplat;
bambictr=0;
while(bambictr < bambilimit)
{
bambx=bambplat+bambictr;
bitwrt(nbplane3,0,bambwid,bambx,bamby,1,1);
if((nbbc[6]) > 1)
{
bitwrt(nbplane2,0,bambwid,bambx,bamby,1,1);
bitwrt(nbplane1,0,bambwid,bambx,bamby,1,1);
bitwrt(nbplane0,0,bambwid,bambx,bamby,1,1);
}
bambictr=bambictr+1;
}
}
return putbambi;
}
// bottom of nonbambi
int putpine(char** iirplane,int irplane[],
int vpthresh[],char vpbig[])
{
int putriny,putxvctr,putxoctr,putxictr,putxoisub;
int putbigcmp,putsmallpix;
int putpilowcap,putpibigcap,putjshifx,putjshify;
char* jrplane0;
char* jrplane1;
char* jrplane2;
char* jrplane3;
jrplane0 = *(iirplane + 0);
jrplane1 = *(iirplane + 1);
jrplane2 = *(iirplane + 2);
jrplane3 = *(iirplane + 3);
// depth = 1 1608 indirects 1604 thru 1607
putpilowcap = irplane[4] * irplane[4] * 3;
putpibigcap = irplane[4] * irplane[4] * 254 * 3;
putxvctr=0;
putriny=irplane[20]+1;
if(irplane[13]==19778)putriny=irplane[20]-1;
if((irplane[20] >= 0)&&(irplane[20] < irplane[21]))
{
irplane[23]=0;
while(putxvctr < irplane[18])
{
putxoctr=0;
// putbigcmp needs to be zeroed HERE 1725
putbigcmp=0;
while(putxoctr < irplane[4])
{
putxictr = 0;
while(putxictr < irplane[4])
{
// putxoisub=(putxoctr*irplane[8]*3)+(putxictr * 3);
// *** ERROR *** above calulation of
// putxoisub is incorrect
putxoisub=((irplane[8])*putxoctr)+putxictr;
putxoisub=putxoisub+(putxvctr*(irplane[4]));
putxoisub=putxoisub*3;
// depth = 5
// ***ERROR*** hidden mistake of zeroing at wrong place
// putbigcmp=0; here only works when irplane[4]==1
// *** ERROR *** initial paperwork tried to add char
// directly to int next.
putbigcmp=putbigcmp+onexwchr(putxoisub,vpbig);
putbigcmp=putbigcmp+onexwchr((putxoisub + 1),vpbig);
putbigcmp=putbigcmp+onexwchr((putxoisub + 2),vpbig);
putxictr=putxictr+1;
}
putxoctr=putxoctr+1;
}
// depth = 3
if((irplane[6] >= 0)&&(irplane[6] <= 1))
{
putsmallpix=0;
if(putbigcmp > irplane[23])putsmallpix=1;
if(putsmallpix == 1)irplane[23]=putbigcmp+1;
if(putsmallpix == 0)irplane[23]=putbigcmp-1;
if(irplane[6] == 1)
{
if(putbigcmp < putpilowcap)putsmallpix=0;
// depth = 5
if(putbigcmp > putpibigcap)putsmallpix=1;
}
putjshifx=putxvctr+irplane[2];
putjshify=irplane[20]+irplane[3];
bitwrt(jrplane3,0,(irplane[7]),putjshifx,putjshify,
1,putsmallpix);
}
// cut here depth = 3
if((irplane[6]) > 1)
{
putsmallpix=0;
putxoctr=0;
putxictr=1;
while(putxictr > 0)
{
if(putbigcmp < (irplane[58+putxoctr]))putxictr=0;
if(putxictr > 0)putxoctr=putxoctr+1;
if(putxoctr > 5)putxictr=0;
}
putxictr=thsixsev[putxoctr];
putxoctr=putxictr+putxictr;
putxictr=putxoctr+putxoctr;
putjshifx=putxvctr+irplane[2];
putjshify=irplane[20]+irplane[3];
bitwrt(jrplane3,0,(irplane[7]),putjshifx,putjshify,
1,(sevbig[putxictr+0]));
bitwrt(jrplane2,0,(irplane[7]),putjshifx,putjshify,
1,(sevbig[putxictr+1]));
bitwrt(jrplane1,0,(irplane[7]),putjshifx,putjshify,
1,(sevbig[putxictr+2]));
bitwrt(jrplane0,0,(irplane[7]),putjshifx,putjshify,
1,(sevbig[putxictr+3]));
}
// end of colored adapter
putxvctr=putxvctr+1;
}
// depth = 2
putxvctr=0;
while(putxvctr < irplane[19])
{
putsmallpix=1;
putxictr=putxvctr+irplane[18];
putjshifx=putxictr+irplane[2];
putjshify=irplane[20]+irplane[3];
bitwrt(jrplane3,0,(irplane[7]),putjshifx,putjshify,
1,putsmallpix);
if((irplane[6]) > 1)
{
bitwrt(jrplane2,0,(irplane[7]),putjshifx,putjshify,
1,putsmallpix);
bitwrt(jrplane1,0,(irplane[7]),putjshifx,putjshify,
1,putsmallpix);
bitwrt(jrplane0,0,(irplane[7]),putjshifx,putjshify,
1,putsmallpix);
}
putxvctr=putxvctr+1;
}
// depth = 2
}
return putriny;
}
// end of putpine
int onebumpw(char** ijplane,int onbbc[],
char ombrecord[],char ombgbig[])
{
FILE* ombfh;
int ombctr,fnlen,fdlen,omballow,oneedclose,ombresu;
char ombcolort[1024];
int ombthresh[16];
char ombfns[90];
// SEEK_SET SEEK_CUR SEEK_END
ombfns[0]='\0';
oneedclose=0;
ombresu=0;
omballow=1;
if(onbbc[5] == 0)
{
fnlen = ombrlen(0,40,ombrecord);
ombctr=0;
while(ombctr < fnlen)
{
ombfns[ombctr]=ombrecord[ombctr];
ombctr=ombctr+1;
}
ombfns[fnlen]='\0';
ombfh = NULL;
if(fnlen > 0)ombfh = fopen(ombfns,"rb");
if(ombfh == NULL)omballow = 0;
// depth = 2
if(omballow > 0)
{
fseek(ombfh,0,SEEK_END);
fdlen=ftell(ombfh);
fseek(ombfh,0,SEEK_SET);
oneedclose=1;
}
// depth = 2
}
// depth = 1;
onbbc[8]=0;
onbbc[9]=0;
onbbc[10]=24;
onbbc[13]=0;
onbbc[15]=0;
if(omballow > 0)
{
omballow=nzreadmbhdr(onbbc,ombrecord,ombcolort,ombfh);
if((onbbc[6]) > 1)
{
ombctr=0;
while(ombctr < 6)
{
onbbc[(58+ombctr)]=shrinkth[ombctr] * onbbc[4] * onbbc[4];
ombctr=ombctr+1;
}
}
}
if((omballow>0)&&((onbbc[21])>0)&&(oneedclose==1))
{
onbbc[56]=onbbc[56]+1;
}
if((onbbc[56]) > 9)onbbc[56]=0;
if((omballow > 0)&&(onbbc[13] == 19778))
{
if(((onbbc[10]) > 1)||((onbbc[4]) > 1))
{
while(omballow > 0)
{
getpine(onbbc,ombrecord,ombcolort,ombgbig,ombfh);
onbbc[20]=putpine(ijplane,onbbc,ombthresh,ombgbig);
if(onbbc[20] < 0)omballow=0;
ombresu=1;
}
}
if(((onbbc[10]) == 1)&&((onbbc[4]) == 1))
{
// if bibitcount==1 and scale==1 fast version
while(omballow > 0)
{
zackreadbw(onbbc,ombrecord,ombcolort,ombgbig,ombfh);
onbbc[20]=nonbambi(ijplane,onbbc,ombgbig);
if(onbbc[20] < 0)omballow=0;
ombresu=1;
}
}
// ------------
}
if(oneedclose > 0)
{
fclose(ombfh);
}
// depth = 1
// ---------
return ombresu;
}
// end of onebumpw
int twobumpw(char** tjple,int tmbc[],char tmbr[],
char tbjg[],char tbf[])
{
int tmhrrem,tmbdiscard,tmbswitch,tmbresult,tmbtuebot;
char tnutexxt[88];
// (640 * 16 / 8) + 62
char tmogroup[2700];
char tmolinne[2684];
tmbswitch=tmbc[5];
tmbdiscard=0;
while(tmbdiscard < 40)
{
tnutexxt[tmbdiscard]='\40';
tmbdiscard=tmbdiscard+1;
}
if(tmbswitch > 0)
{
tmbresult=onebumpw(tjple,tmbc,tmbr,tbjg);
}
if(tmbswitch == 0)
{
// -------------
tmbdiscard=0;
while(tmbdiscard < 40)
{
tnutexxt[tmbdiscard]=tmbr[tmbdiscard];
tmbdiscard=tmbdiscard+1;
}
// -------------
tmbc[21]=0;
tmbc[4]=0;
tmbresult=0;
if((tmbc[24]) > 0)
{
tmbresult=onebumpw(tjple,tmbc,tmbr,tbjg);
}
tmbtuebot=tmbc[21];
tmhrrem=tmbc[1]-tmbtuebot;
// depth = 2
if((tmbc[0]) < 280)tmhrrem=0;
// ------------------------------------
tmbc[52]=divmodi(tmhrrem,14,0);
// greatest possible tmbc[52] is number of lines of
// text to be written
if((tmbc[52]) > 16)tmbc[52]=16;
if((tmbc[30]) == 11830)tmbc[52]=1;
tmbc[53]=1;
if((tmbc[30]) == 11830)tmbc[53]=1;
tmbc[51]=0;
tmbc[54]=0;
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
// printstr(tmolinne,(tmbc[0]),1000,tbf,40,tnutexxt);
// tmbdiscard=onebumpw(tjple,tmbc,tmolinne,tbjg);
// -------------------------------------
// ------------------------------------
chrfroms(0,40,tnutexxt,"w ---- h ---- s ----- b -- u dos B!");
linuwrn(3,4,10,tnutexxt,(tmbc[8]));
linuwrn(11,4,10,tnutexxt,(tmbc[9]));
linuwrn(19,1,10,tnutexxt,(tmbc[56]));
linuwrn(20,1,10,tnutexxt,(tmbc[35]));
linuwrn(21,1,10,tnutexxt,(tmbc[28]));
linuwrn(22,2,10,tnutexxt,(tmbc[4]));
linuwrn(28,2,10,tnutexxt,(tmbc[10]));
if(((tmbc[12]) > 0)&&((tmbc[10]) == 8))
{
linuwrn(34,3,10,tnutexxt,(tmbc[12]));
}
linuwrn(39,1,16,tnutexxt,((tmbc[6])+10));
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
// --------------------------------------------------------------
chrfroms(0,40,tnutexxt,"w ---- h ---- t ------ k --- ----- r!");
linuwrn(3,4,10,tnutexxt,(tmbc[7]));
linuwrn(11,4,10,tnutexxt,(tmbc[29]));
linuwrn(19,6,10,tnutexxt,(tmbc[32]));
linuwrn(29,3,10,tnutexxt,(tmbc[26]));
if(((tmbc[27]) >= 0)&&((tmbc[27]) < 100000))
{
linuwrn(33,5,10,tnutexxt,(tmbc[27]));
}
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"-- ---- ---- ------------------------ !");
linuwrn(1,2,10,tnutexxt,(tmbc[52]));
if((lmoux < 10000)&&(lmouy < 10000))
{
if((lmoux >= 0)&&(lmouy >= 0))
{
if((tmbc[4]) == 1)
{
linuwrn(4,4,10,tnutexxt,lmoux);
linuwrn(9,4,10,tnutexxt,lmouy);
}
}
}
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"This program is not valid without its !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"source code file xwview04.c !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"THE ABILITY TO DESTROY A PLANET IS !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"INSIGNIFICANT NEXT TO THE POWER OF !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"OPEN SOURCE. !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt," o open 1 to 4 small screen q quit!");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"5 large screen c colormode r redraw!");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
if(fourdirpen == 0)
{
chrfroms(0,40,tnutexxt," ; get current directory filenames !");
}
if(fourdirpen == 1)
{
chrfroms(0,40,tnutexxt," . close dir , next dirfilename !");
}
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"Vote against the U.S. military draft !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"Vote for an All Volunteer jury system. !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"Vote for an All Volunteer jury system. !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
chrfroms(0,40,tnutexxt,"xwview04.c 04/01/06 by Eric Matteson !");
tmbdiscard=xwtscroll(tmbc,tnutexxt,tmogroup);
// -------------------------------------------------------------
tmbc[54]=1;
tmbc[51]=0;
tmbc[5]=1;
tmbc[4]=1;
tmbc[3]=tmbc[3]+tmbc[21];
tmbc[21]=14;
tmhrrem=1;
while(tmhrrem > 0)
{
tmhrrem=xwtscroll(tmbc,tnutexxt,tmogroup);
if(tmhrrem > 0)
{
printstr(tmolinne,(tmbc[0]),1000,tbf,40,tnutexxt);
tmbdiscard=onebumpw(tjple,tmbc,tmolinne,tbjg);
tmbc[3]=tmbc[3]+tmbc[21];
}
}
// -------------------------------------
}
// depth = 1
return tmbresult;
}
// end of twobumpw
int twobuz(char** zpl,int zbc[],char zrc[],char zb[],
char zf[],char zn[])
{
// zpl[] is target plane
// zbc[] is bitmap context
// zrc[] is record
// zb[] is big line of 24 bit pixels
// zf[] is font storage
// zn[] is filename
int tbzsel,tbzctr,tbzfnbase,tbzfnlen,tbztzes;
tbztzes=0;
tbzsel = zbc[35];
if((tbzsel >= 1)&&(tbzsel <= 5))
{
if(tbzsel == 5)
{
zbc[0]=divmodi(((zbc[7])-31),32,0)*32;
zbc[1]=zbc[29]-28;
zbc[2]=0;
zbc[3]=0;
zbc[34]=160;
}
if(tbzsel == 1)
{
zbc[0] = divmodi(((zbc[7])-31),32,0)*16;
zbc[1] = divmodi(((zbc[29])-28),2,0);
zbc[2] = 0;
zbc[3] = 0;
zbc[34] = 0;
}
if(tbzsel == 2)
{
zbc[0] = divmodi(((zbc[7])-31),32,0)*16;
zbc[1] = divmodi(((zbc[29])-28),2,0);
zbc[2] = zbc[0];
zbc[3] = 0;
zbc[34] = 40;
}
if(tbzsel == 3)
{
zbc[0] = divmodi(((zbc[7])-31),32,0)*16;
zbc[1] = divmodi(((zbc[29])-28),2,0);
zbc[2] = 0;
zbc[3] = zbc[1];
zbc[34] = 80;
}
if(tbzsel == 4)
{
zbc[0] = divmodi(((zbc[7])-31),32,0)*16;
zbc[1] = divmodi(((zbc[29])-28),2,0);
zbc[2] = zbc[0];
zbc[3] = zbc[1];
zbc[34] = 120;
}
zbc[5] = 1-1;
tbzfnbase = zbc[34];
tbzfnlen = ombrlen(tbzfnbase,40,zn);
zbc[24]=0;
if(tbzfnlen < 1)
{
tbzctr=0;
while(tbzctr < 40)
{
zrc[tbzctr] = '\40';
tbzctr=tbzctr+1;
}
}
if(tbzfnlen >= 1)
{
zbc[4]=0;
zbc[5]=0;
tbzctr=0;
while(tbzctr < 40)
{
zrc[tbzctr] = zn[tbzctr + tbzfnbase];
tbzctr = tbzctr + 1;
}
zbc[24] = zbc[tbzsel + 40];
}
tbztzes = twobumpw(zpl,zbc,zrc,zb,zf);
}
return tbztzes;
}
// end of twobuz
int fourbump(char** aap,int ac[],char ar[],char ab[],
char af[],char an[])
{
int fourbres,fourbctr,fourbase,fourkend,fourrd;
int fourbcmp,fourjj,zandtogf;
// ac[7] is planewidth ac[29] is planehgt
// ac[30] is Dagrajumpnow ac[31] is Freddyisnext
// 11829 initialize
// 11830 keys to filename
// 11831 choose screen
// 11832 is quit
fourbres=0;
while(fourbres < 4)
{
fourbcmp=divmodi(((ac[7])*(ac[29])),8,0)+1;
fourbctr=0;
while(fourbctr < fourbcmp)
{
// *** ERROR *** attempting to set indirect indirect
// pointers beyond dimension of array
// aap[fourbctr]='\0';
*(aap[fourbres]+fourbctr)='\0';
fourbctr=fourbctr+1;
}
fourbres=fourbres+1;
}
// --------------------------------------------------
fourbres=0;
fourrd=1;
fourbase=160;
if((ac[28]) == 4)fourbase=120;
if((ac[28]) == 3)fourbase=80;
if((ac[28]) == 2)fourbase=40;
// depth = 1
if((ac[28]) == 1)fourbase=0;
if((ac[30]) == 11829)
{
// fourbctr=41;
// while(fourbctr < 46)
// {
// ac[fourbctr]=0;
// depth = 3
// fourbctr=fourbctr+1;
// }
fonthfill(af);
ac[34]=160;
ac[28]=5;
ac[57]=ac[28];
ac[6]=1;
// depth = 2
ac[31]=11831;
ac[56]=0;
ac[26]=53;
ac[30]=11831;
ac[27]=131000;
fourbctr=ac[28];
}
if((ac[30]) == 11830)
{
// need ac[25] == 0
fourbctr=ac[28];
ac[34]=fourbase;
ac[35]=fourbctr;
fourkend=nzlinedone(ac,an);
fourbres=twobuz(aap,ac,ar,ab,af,an);
ac[31]=11830;
// depth = 2
if(fourkend > 0)ac[31]=11831;
if(fourkend > 0)ac[fourbctr + 40]=1;
if(fourkend > 0)ac[30]=ac[31];
}
if((ac[30]) == 11831)
{
ac[31]=11831;
fourbcmp=ac[26];
zandtogf=0;
if(fourbcmp == 82)zandtogf=1;
if(fourbcmp == 114)zandtogf=1;
if((ac[57])==(ac[28]))zandtogf=0;
if(zandtogf==1)
{
// 82 R 114 R redraw most recent
fourjj=ac[28];
if((ombrlen(fourbase,40,an)<1)&&((ac[fourjj+40])==0))
{
fourjj=0;
while(fourjj < 40)
{
zandtogf=an[(((ac[57])-1)*40)+fourjj];
an[(((ac[28])-1)*40)+fourjj] = zandtogf;
fourjj=fourjj+1;
}
fourjj=ac[28];
if(ombrlen(fourbase,40,an) > 4)ac[fourjj + 40]=1;
}
}
ac[57]=ac[28];
if((fourbcmp == 78)||(fourbcmp == 110))
{
// N 78 110 n new
fourjj=ac[28];
ac[fourjj + 40]=0;
fourjj=0;
while(fourjj < 40)
{
an[fourbase + fourjj]='\40';
fourjj=fourjj+1;
}
}
if((fourbcmp == 79)||(fourbcmp == 111))
{
// O 79 111 o open
fourbctr=ac[28];
fourrd=0;
ac[25]=0;
chrfroms(fourbase,40,an,"Enter Filename !");
// depth = 3
ac[fourbctr + 40]=0;
ac[31]=11830;
}
if((fourbcmp == 59)&&(fourdirpen == 0))
{
// 59 ;
xfourdp=opendir("./");
if(xfourdp != NULL)fourdirpen=1;
}
if((fourbcmp == 46)&&(fourdirpen == 1))
{
// 46 .
(void) closedir(xfourdp);
fourdirpen=0;
}
if((fourbcmp == 44)&&(fourdirpen == 1))
{
// 44 ,
seadirallow=0;
while(seadirallow < 40)
{
// depth = 4
can[((ac[28]-1)*40)+seadirallow]='\40';
seadirallow=seadirallow+1;
}
seadirallow=ac[28];
ac[seadirallow + 40]=0;
seadirallow=1;
while(seadirallow > 0)
{
xfourep=readdir(xfourdp);
if(xfourep == NULL)
{
fourdirpen=0;
(void) closedir(xfourdp);
// depth = 5
seadirallow=0;
}
if(seadirallow > 0)
{
if(nzextcmp((char*)(*xfourep).d_name,"2.BMP.bmp")!=0)
{
seadirallow=0;
}
}
}
// depth = 3
if(fourdirpen == 1)
{
seadirlimit=ombrlen(0,0,(*xfourep).d_name);
seadirallow=0;
if(seadirlimit < 40)
{
ac[40+(ac[28])]=1;
while(seadirallow < seadirlimit)
{
sdirch = *((*xfourep).d_name + seadirallow);
can[((ac[28]-1)*40)+seadirallow] = sdirch;
// depth = 6
seadirallow=seadirallow+1;
}
}
}
}
// depth = 2
if((fourbcmp == 81)||(fourbcmp == 113))
{
// 81 Q 113 q quit
if(fourdirpen == 1)
{
(void) closedir(xfourdp);
}
fourrd=0;
ac[31]=11832;
}
if((fourbcmp == 67)||(fourbcmp == 99))
{
// 67 C 99 c color mode
ac[6]=ac[6]+1;
if((ac[6]) > 2)ac[6]=0;
}
if((fourbcmp >= 49)&&(fourbcmp <= 53))
{
fourbctr=ac[26] - 48;
ac[28]=fourbctr;
}
// N 78 110 n new
if((fourbcmp == 78)||(fourbcmp == 111))
{
fourbctr=ac[26]-48;
ac[40+fourbctr]=0;
}
if(((ac[28]) >= 1)&&((ac[28]) <= 4))
{
fourbctr = 1;
while(fourbctr <= 4)
{
if((fourbctr == (ac[28]))||(fourrd > 0))
{
// depth = 5
ac[35]=fourbctr;
if(fourbctr == 1)ac[34]=0;
if(fourbctr == 2)ac[34]=40;
if(fourbctr == 3)ac[34]=80;
if(fourbctr == 4)ac[34]=120;
fourbres=twobuz(aap,ac,ar,ab,af,an);
}
fourbctr=fourbctr+1;
}
}
// depth = 2
if((ac[28]) == 5)
{
ac[35]=5;
ac[34]=160;
fourbres=twobuz(aap,ac,ar,ab,af,an);
}
}
// depth = 1
ac[30]=ac[31];
return fourbres;
}
// end of fourbump;
int nzextcmp(char* uncfn,char* ecright)
{
int nzrxtcmp,nzeoctr,nzeictr,nzeolim;
int nzebase,uurxtcmp,nzeterm;
nzrxtcmp=0;
nzebase=ombrlen(0,0,uncfn)-4;
nzeolim=ixreada(1,1,16,0,ecright);
if(nzebase >= 1)
{
nzeoctr=0;
while(nzeoctr < nzeolim)
{
// depth=3
nzeictr=0;
uurxtcmp=0;
while(nzeictr < 4)
{
nzeterm=onexwdig(((nzeoctr*4)+1+nzeictr),ecright);
if(onexwdig((nzebase+nzeictr),uncfn) != nzeterm)
{
uurxtcmp=1;
// depth = 5
}
nzeictr=nzeictr+1;
}
if(uurxtcmp == 0)nzrxtcmp=1;
nzeoctr=nzeoctr+1;
}
}
return nzrxtcmp;
}
char twofromten(int rawenine)
{
int eightofi[8];
int rtftctr,rfftres,rawentop,rfftrem;
char tfftres;
rtftctr=8;
rawentop=rawenine;
while(rtftctr > 0)
{
rfftrem=divmodi(rawentop,10,1);
rawentop=divmodi(rawentop,10,0);
eightofi[rtftctr-1]=rfftrem;
rtftctr=rtftctr-1;
}
rtftctr=0;
rfftres=0;
while(rtftctr < 8)
{
rfftres=rfftres*2;
rfftres=rfftres+eightofi[rtftctr];
rtftctr=rtftctr+1;
}
if(rfftres > 127)rfftres=rfftres-256;
tfftres = (char)rfftres;
return tfftres;
}
// add font below this line ----------2012
// 4096 = 64 * 64 to 256 * 16
// 64 = 16 * 4
// outer loop 0 to 63 (*64)
// medium loop (medium * 4) + 0 to 3
// medium is 0 to 15
// medium result (0 to 3)*16 + (medium*1)
// inner loop 0 to 3
// -----------------------------------------------
// 20000000-,200000000,20000000-,200000000,
// 201000100,201111100,201111100,201111100,
// 201000100,201111100,201111100,201111100,
// 201000100,201100000,201100000,200001100,
// 201000100,201100000,201100000,200001100,
// 201000100,201100000,201100000,200001100,
// 201000100,201100000,201111100,200001100,
// 20xxxxx0-,20xxxxx0-,-0xxxxx0-,20xxxxx0-,
// 201111100,201111100,201111100,200001100,
// 201111100,201111100,201100100,200001100,
// 200001100,200001100,201100100,200001100,
// 200001100,200001100,201100100,200001100,
// 200001100,201111100,201111100,200001100,
// 200001100,201111100,201111100,200001100,
// 200000000,200000000,200000000,200000000,
// 200000000,200000000,200000000,200000000,
// ,2 , ,2 ,
// Open Source Font Copyright C 2005 by Eric Matteson
// Permission is granted to use this font in
// open source applications programs written for Linux.
// begin open source font ,2 , ,2,
// ); ,2 , ,2,
// -x76543210-x76543210-x76543210-x76543210-
const int ifhfg[]={ 200000000,200000000,
200000000,200000000,
200000000,200000000,200000000,200000000,
// -x76543210-x76543210-x76543210-x76543210.
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200011000,200100100,200100100,
200000000,200011000,200100100,200100100,
200000000,200011000,200110100,201111100,
200000000,200011000,200110100,201111100,
200000000,200011000,200000000,200100100,
200000000,200011000,200000000,200100100,
200000000,200011000,200000000,200100100,
200000000,200011000,200000000,200100100,
200000000,200000000,200000000,201111100,
200000000,200000000,200000000,201111100,
200000000,200011000,200000000,200100100,
200000000,200011000,200000000,200100100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200111100,201110100,200011100,200011000,
200111100,201110100,200011100,200011000,
201001000,201010100,200010100,200001000,
201001000,201010100,200010100,200001000,
201001000,201111100,200111100,200000000,
201001000,201111100,200111100,200000000,
201111100,200101000,201100100,200000000,
201111100,200101000,201100100,200000000,
200001000,201001100,201100100,200000000,
200001100,201001100,201100100,200000000,
201111100,200000000,201111100,200000000,
201111100,200000000,201111100,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200001100,200110000,200010000,200011000,
200001100,200110000,200010000,200011000,
200011000,200011000,201010100,200011000,
200011000,200011000,201010100,200011000,
200110000,200001100,200111000,201111100,
200110000,200001100,200111000,201111100,
200110000,200001100,200111000,201111100,
200110000,200001100,200111000,201111100,
200011000,200011000,201010100,200011000,
200011000,200011000,201010100,200011000,
200001100,200110000,200010000,200011000,
200001100,200110000,200010000,200011000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200001100,
200000000,200000000,200000000,200001100,
200000000,200000000,200000000,200001100,
200000000,200000000,200000000,200001100,
200000000,200111100,200000000,200011000,
200000000,200111100,200000000,200011000,
200000000,200111100,200000000,200011000,
200000000,200111100,200000000,200011000,
200001100,200000000,200000000,200110000,
200001100,200000000,200000000,200110000,
200000100,200000000,200001100,201100000,
200000100,200000000,200001100,201100000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201111100,200001100,201111100,201111100,
201111100,200001100,201111100,201111100,
201000100,200001100,200001100,200001100,
201000100,200001100,200001100,200001100,
201000100,200001100,200001100,201111100,
201000100,200001100,200001100,201111100,
201000100,200001100,201111100,201111100,
201000100,200001100,201111100,201111100,
201000100,200001100,201100000,200001100,
201000100,200001100,201100000,200001100,
201111100,200001100,201111100,201111100,
201111100,200001100,201111100,201111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000100,201111100,201111100,201111100,
201000100,201111100,201111100,201111100,
201000100,201100000,201100000,200001100,
201000100,201100000,201100000,200001100,
201000100,201100000,201100000,200001100,
201000100,201100000,201111100,200001100,
201111100,201111100,201111100,200001100,
201111100,201111100,201100100,200001100,
200001100,200001100,201100100,200001100,
200001100,200001100,201100100,200001100,
200001100,201111100,201111100,200001100,
200001100,201111100,201111100,200001100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201111100,201111100,200000000,200000000,
201111100,201111100,200000000,200000000,
201000100,201001100,200000100,200001100,
201000100,201000100,200000100,200001100,
201000100,201000100,200000000,200000000,
201111100,201001100,200000000,200000000,
201111100,201111100,200000000,200000000,
201000100,201111100,200000000,200000000,
201000100,200001100,200000100,200000100,
201000100,200001100,200000100,200000100,
201111100,201111100,200000000,200011000,
201111100,201111100,200000000,200011000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000100,200000000,201100000,200010000,
200000100,200000000,201100000,200111000,
200011000,201111100,200011000,201100100,
200011000,201111100,200011000,201100100,
201100000,200000000,200001100,201000100,
201100000,200000000,200001100,201001000,
200011000,200000000,200011000,200010000,
200011000,200000000,200011000,200010000,
200000100,201111100,201100000,200000000,
200000100,201111100,201100000,200000000,
200000000,200000000,200000000,200010000,
200000000,200000000,200000000,200010000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201111100,201111110,201110000,201111100,
201111100,201111100,201110000,201111100,
201000100,201000100,201001100,201100000,
201000100,201000100,201001100,201100000,
201010100,201000100,201001100,201100000,
201010100,201000100,201001100,201100000,
201010100,201111100,201110000,201100000,
201011100,201111100,201110000,201100000,
201000100,201000100,201001100,201100000,
201110100,201000100,201001100,201100000,
200000000,201000100,201110000,201111100,
200000000,201000100,201110000,201111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201100000,201111100,201111100,201110000,
201100000,201111100,201111100,201110000,
201011000,201100000,201100000,201001100,
201011000,201100000,201100000,201001100,
201001100,201100000,201100000,201000000,
201001100,201100000,201100000,201000000,
201001100,201111100,201111100,201111100,
201001100,201111100,201111100,201111100,
201011000,201100000,201100000,201001100,
201011000,201100000,201100000,201001100,
201100000,201111100,201100000,201110000,
201100000,201111100,201100000,201110000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000100,200111100,200111100,201001100,
201000100,200111100,200111100,201001100,
201000100,200011000,200011000,201010000,
201000100,200011000,200011000,201010000,
201111100,200011000,200011000,201100000,
201111100,200011000,200011000,201100000,
201111100,200011000,200011000,201010000,
201111100,200011000,200011000,201010000,
201000100,200011000,201001100,201001100,
201000100,200011000,201001100,201001100,
201000100,200111100,201111100,200000000,
201000100,200111100,201111100,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000000,201111110,201000100,200011100,
201000000,201111110,201000100,200011100,
201000000,201010100,201100100,200100100,
201000000,201010100,201100100,200100100,
201000000,201010100,201100100,201000100,
201000000,201010100,201010100,201000100,
201000000,201010100,201010100,201000100,
201000000,201010100,201010100,201000100,
201000000,201000100,201001100,201001000,
201000000,201000100,201001100,201001000,
201111100,201000100,201000100,201111000,
201111100,201000100,201000100,201111000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201111100,200011100,201111100,201111000,
201111100,200011100,201111100,201111000,
201000100,200100100,201000100,201100000,
201000100,200100100,201000100,201100000,
201000100,201000100,201111100,200110000,
201000100,201000100,201111100,200011000,
201111100,201000100,201100000,200001100,
201111100,201001000,201010000,200001100,
201100000,201011000,201010000,200000100,
201100000,201011000,201001000,200000100,
201100000,201110100,201001000,200011000,
201100000,201110100,201001000,201110000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201111100,201000100,201000100,201010100,
201111100,201000100,201000100,201010100,
200011000,201000100,201000100,201010100,
200011000,201000100,201000100,201011100,
200011000,201000100,200101000,201001100,
200011000,201000100,200101000,201101000,
200011000,201000100,200101000,200110000,
200011000,201000100,200101000,200110000,
200011000,201000100,200010000,200100000,
200011000,201000100,200010000,200100000,
200011000,201111100,200000000,200000000,
200011000,201111100,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000100,201000100,201111100,201110000,
201000100,201000100,201111100,201110000,
200101000,200100100,200001000,201000000,
200101000,200100100,200001000,201000000,
200010000,200011000,200010000,201000000,
200010000,200011000,200010000,201000000,
200101000,200011000,201000000,201000000,
200101000,200011000,201000000,201000000,
201000100,200011000,201111000,201000000,
201000100,200011000,201111000,201000000,
200000000,200000000,200000000,201110000,
200000000,200000000,200000000,201110000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000000,200011100,200011000,200000000,
201000000,200011100,200011000,200000000,
200100000,200000100,200100100,200000000,
200100000,200000100,200100100,200000000,
200010000,200000100,201000100,200000000,
200010000,200000100,201000000,200000000,
200001000,200000100,200000000,200000000,
200001000,200000100,200000000,200000000,
200000100,200000100,200000000,200000000,
200000100,200000100,200000000,200000000,
200000100,200011100,200000000,201111100,
200000000,200011100,200000000,201111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000000,200000000,200000000,200000000,
201000000,200000000,200000000,200000000,
201100000,201111100,201000000,200000000,
201100000,201111100,201000000,200000000,
200000000,200000100,201000000,201111100,
200000000,200000100,201000000,201111100,
200000000,201111100,201111100,201100000,
200000000,201111100,201111100,201100000,
200000000,201000100,201000100,201100000,
200000000,201000100,201000100,201100000,
200000000,201111100,201111100,201111100,
200000000,201111100,201111100,201111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000100,201111100,201111000,201111100,
200000100,201111100,201111000,201111100,
200000100,201000100,201000000,201001000,
200000100,201000100,201000000,201001000,
201111100,201111100,201111100,201110000,
201111100,201111100,201111100,201110000,
201000100,201000000,201000000,200010000,
201000100,201000000,201000000,200010000,
201111100,201111100,201000000,200110000,
201111100,201111100,201000000,200110000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000000,200001000,200001000,200100100,
201000000,200001000,200001000,200100100,
201000000,200000000,200000000,200101000,
201000000,200000000,200000000,200101000,
201111100,200001000,200001000,200110000,
201111100,200001000,200001000,200110000,
201000100,200001000,200001000,200101000,
201000100,200001000,200001000,200101000,
201000100,200001000,200111000,200100100,
201000100,200001000,200111000,200100100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,201100000,201000100,200000000,
200000000,201100000,201000100,200000000,
200010000,201010000,201100100,200111100,
200010000,201010000,201100100,200111100,
200010000,201011100,201010100,200100100,
200010000,201011100,201010100,200100100,
200010000,201010100,201001100,200100100,
200010000,201010100,201001100,200100100,
200011110,201000100,201000100,200111100,
200011110,201000100,201000100,200111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200111100,201111000,200000000,201110000,
200111100,201111000,200000000,201110000,
200100100,201001000,200111100,201000000,
200100100,201001000,200111100,201000000,
200011100,201110000,200100000,201111100,
200011100,201110000,200100000,201111100,
200100000,200010000,200100000,200000100,
200100000,200010000,200100000,200000100,
200100000,200011100,200100000,200011100,
200100000,200011100,200100000,200011100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200100100,
200000000,200000000,200000000,200100100,
200010000,200100100,201000100,200010100,
200010000,200100100,201000100,200010100,
201111100,200100100,200101000,201011100,
201111100,200100100,200101000,201011100,
200010000,200100100,200010000,201010000,
200010000,200100100,200010000,201010000,
200010000,200111100,200000000,200100000,
200010000,200111100,200000000,200100000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
201000100,201000100,200111100,200011100,
201000100,201000100,200111100,200011100,
200101000,200101000,200001000,200100000,
200101000,200101000,200001000,200100000,
200010000,200010000,200001000,201100000,
200010000,200010000,200001000,201100000,
200101000,200010000,200010000,200100000,
200101000,200010000,200010000,200100000,
201000100,200010000,200111100,200011100,
201000100,200010000,200111100,200011100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200010000,201110000,201110000,200010000,
200010000,201110000,201110000,200010000,
200010000,200001000,201010100,200101000,
200010000,200001000,201010100,200101000,
200000000,200001100,200011100,201000100,
200000000,200001100,200011100,201000100,
200010000,200001000,200000000,201000100,
200010000,200001000,200000000,201000100,
200010000,201110000,200000000,201111100,
200010000,201110000,200000000,201111100,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
// ); ,2 , ,2 ,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000,
200000000,200000000,200000000,200000000};
// -x76543210-x76543210-x76543210-x76543210..
// end of font
void fonthfill(char fhf[])
{
int fholop,fhmedlop,fhilop,fhhsub,fhdsub,fhdterm;
// 4096 = 64 * 64 to 256 * 16
// 64 = 16 * 4
// outer loop 0 to 63 (*64)
// medium loop (medium * 4)+0 to 3 medium is 0 to 15
// medium result (0 to 3)*16 + (medium*1)
// inner loop 0 to 3
// --------------------------------
fholop=0;
while(fholop < 64)
{
fhmedlop=0;
while(fhmedlop < 16)
{
fhilop=0;
while(fhilop < 4)
{
fhhsub = (fholop * 64)+(fhmedlop * 4)+fhilop;
fhdsub = (fholop * 64)+(fhilop * 16)+fhmedlop;
fhdterm = ifhfg[fhhsub];
fhf[fhdsub]=twofromten(fhdterm);
fhilop=fhilop+1;
}
fhmedlop=fhmedlop+1;
}
fholop=fholop+1;
}
}
// end of void fonthfill(char fhf[]);
// This is last line of this program

Roy Schestowitz

unread,
Apr 1, 2006, 5:42:52 PM4/1/06
to
__/ [ ericmatteson2003november ] on Saturday 01 April 2006 21:04 \__

>> Roy Schestowitz wrote:
>> ,----[ Quote ]
>> | Schools and colleges are failing the next generation of scientists by
>> | not providing the computer skills they need to do the job, according
>> | to the scientists behind Microsoft Research's 2020 report.
>> `----
>>
>> I will avoid flaming by making the remarks one begs for.
>>
> I know what you mean. Community college bookstores fail to
> stock books about how to write c programs that run on
> LINUX XWINDOWS the operating system of the future.
> It took me six years of scavenging for scraps of information
> on the Internet to learn little pieces of information about
> how to write c programs that run on LINUX XWINDOWS.
> I finally have been able to write an example program
> that displays simple bitmaps *.bmp on linux
> XWindows
> // this is the first line of this program
> // gcc -Wall xwview04.c -L/usr/X11R6/lib -lX11 -o xwview04.out
> // ./xwview04.out at XWindows linux bash command prompt
> #include<X11/Xutil.h>
> #include<stdio.h>
>

> <huge snip>

I see that you decided to share a program with the world (some reader use
dial-up, bear in mind). Either way, it's out there in UseNet, FWIW.

The introduction of API's and the fact that courses aim at API memorisation
is problematic. Students will never be able to understand what slows down a
program( let alone how it can be solved) if all they get taught is a
function name, which leads to higher-level 'recipes' (like Flash)

OpenBMP();

It may be fine in practice. The "just add water" approach. But in practice,
unpredictable things happen. And as always, if you ever need to modify,
review and use close-source code, all you will see (as correspondence to
your code listing is:

0001010010110100010101010101001000010100101101000101010101010010
1010101111010110100100010100101101000101010101010010101010111101
0110100100010100101101000101010101010010101010111101011010010001
0100101101000101010101010010101010111101011010010001010010110100
0101010101010010101010111101011010010001010010110100010101010101
0010101010111101011010010001010010110100010101010101001010101011
1101011010010001010010110100010101010101001010101011110101101001
0001010010110100010101010101001010101011110101101001000101001011
0100010101010101001010101011110101101001000101001011010001010101
0101001010101011110101101001000101001011010001010101010100101010
1011110101101001000101001011010001010101010100101010101111010110
1001000101001011010001010101010100101010101111010110100100010100
1011010001010101010100101010101111010110100100010100101101000101
0101010100101010101111010110100100010100101101000101010101010010
1010101111010110100100010100101101000101010101010010101010111101
0110100100010100101101000101010101010010101010111101011010010001
0100101101000101010101010010101010111101011010010001010010110100
0101010101010010101010111101011010010001010010110100010101010101
0010101010111101011010010001010010110100010101010101001010101011
1101011010010001010010110100010101010101001010101011110101101001
0001010010110100010101010101001010101011110101101001000101001011
0100010101010101001010101011110101101001000101001011010001010101
0101001010101011110101101001000101001011010001010101010100101010
1011110101101001000101001011010001010101010100101010101111010110
1001000101001011010001010101010100101010101111010110100100010100
1011010001010101010100101010101111010110100100010100101101000101
0101010100101010101111010110100100010100101101000101010101010010
1010101111010110100100010100101101000101010101010010101010111101
0110100100010100101101000101010101010010101010111101011010011010
1011110101101001

Now, *there's* one for the textbooks.

Best wishes,

Roy

--
Roy S. Schestowitz | "Life is too short to proofread"
http://Schestowitz.com | SuSE Linux Ś PGP-Key: 0x74572E8E
11:35pm up 24 days 13:18, 10 users, load average: 1.60, 1.13, 0.85
http://iuron.com - Open Source knowledge engine project

0 new messages