Bravo to Pope Francis

Leave a comment

Just a short article this time.

————————————————————————

More and more linux distros are getting into what is known as a network install.using ipxe. The latest one I have seen is Arch linux. Never used arch linux, but people whohave used the network install say it makes for a more efficient system when setup is finnished. More details at:

https://releng.archlinux.org/pxeboot/

———————————————————————–

Interesting idea to modify for a portable laptop stand . This is just a crude prototype.

stabd

———————————————————————–

Found a nice little hack with youtube-dl. Youtube-dl allows you to manually download youtube videos. Downloaded several videos but they sere all saved as mp4. Not only does that waste space, but my old machine can not really handle that format. in looking at the documentation, there is a command line switch that will on the fly convert formats according to the following table:

-f FMT, –format=FMT
Specify the video format (quality) in which to download the video.

For youtube.com, in particular, the meaning of the format codes is
given as:

WebM video at 480p: 43
WebM video at 720p: 45
H264 video in MP4 container at 480p: 18
H264 video in MP4 container at 720p: 22
H264 video in MP4 container at 1080p: 37
H264 video in FLV container at 360p: 34
H264 video in FLV container at 480p: 35
H263 video at 240p: 5
3GP video: 17

Note that not all videos are available in all formats and that
other sites supported by youtube-dl may have different conventions
for their video formats.

So for me I used;

$ youtube-dl https://www.youtube.com/watch?v=xxxxxxxxxxxx -f 34

Now files are saved as flv with a space saving up to 75 %.. Where I had problems with the mp4 format, the flv formatted files play perfectly.

———————————————————————–

P000-256-334-695-d0028

Most portables require a special cable to interface with a usb to thernet adapter. For the Nexus 7, you will need an OTG (On the Go) cable. they are fairly inexpensive. You can add a powered hub and attach a keyboard and a number of other items.

———————————————————————–

Thanx to everyone for help getting us over 500,000 views at http://www.instructables.com

Screenshot from 2013-04-18 13:23:29

———————————————————————–

Old memory from an upgraded laptop to upgrade diskless thin client to work with the our latest ltsp server.

P000-256-338-694-f1024

———————————————————————–

Went to Frys and it seems as if they had dumped the Arduino and all all the micro-controllers. I inquired about it and was directed to a manager. I had finished my business there so I said I would ask later. The later in the day I stopped by Radio Shack. They were kind of dumping the Arduino. Got an ethernet adapter for a good price. Now the carry the Seeed products. It is an arduino clone. Their add on boards were half the price of the Arduino stuff. Check it out.

———————————————————————–

Love virtual machines as you have have several os’es running at the same time. Very memory intensive though. On a debian base system. the virtual machines ard arch linux, Centos, and a instance of debian with the KDE Desktop. Also great for testing software you are not sure about.

Screenshot from 2013-04-24 22:42:45

——————————————————————–

Followup to the cable making. You will also probably have to make a female end at one time or another. They are easier to prepare than the regular ends. The will be inserted from inside the wall in a face plate

Hacking again.

The connector is color coded with the standard wo-o-wg-bl-wbl-g-wbr-br. Not always in that order. Note the B and the A markings. Since the B type cable is used most often, the color chart is on the top.A so all you have to is is slide the proper color wire in the correct slot and  then punch it down.

mHHiqpz7YSTFRoZC3wZOmgg

Example of a punch down tool being used. notice the extra lenth of wire.Pretty simple and easy.  You will end up cutting off the extra wire.

punchdown-step5

Once you have punched down all eight wires, you will cover the unit with the provided caps.

x_cn384_6a_f5_72dpi

We just use cheap punch down tool that syou can get probably 5-10 for 3 bucks. Good punch down tools for for thirty dollars or more depending on where you get the tool.

P000-274-308-631-c9029

——————————————————————-

A Ups short for interuptable power supply is to condition electricity for the equipment connected to the unit. Usually not all lines are used for that. Some of the power receptacles (where you plug in things) can be used for surge protection only.  Usually the conditioned power receptacles  will say they are for using battery backup and surge protection.

Since I mentioned the unit is for line conditioning, the ups will smooth out or clean the power coming in the the devices the ups protects. It also should protect against extreme situations such power surges and brownouts.

Most people know about power surges, such a protection against such dangers as lightning strikes. Generally that is true if the lightning strike is not a direct hit to your power lines. Some electrcity companies will install special surge protection on a home or building making it not usually necessary to have to use surge protectors in the building.

What a lot of people do not know about is brownouts. Sometimes this is called the silent killer of equipment. Surge protection will not help you in protecting from the brownouts. Brownouts can be more problematic than blackouts to delicate electronic equipment in some cases. Brownouts are defined as extended periods of voltage drop or sag coming from the power grid. In brownout conditions, most devices will continue to run, but with unexpected errors and possible long term damage to components. Brownouts can occur at the utility level like blackouts, but in many cases they can also occur within your building’s electrical grid, when a large local load is applied.

In a brownout, power supplies need to draw more current to compensate for the lower supply voltage, which is very stressful for transistors, wires, diodes, etc. They also become less efficient, which makes them draw even more current, aggravating the problem.

The ups obviously has a big job to do. There are actually two basic types of ups’s. One unit uses line power till the power goes out and then the battery takes over. The switching from the line power to the battery can leave a short time when equipment connected to the unit has a mini blackout which can cause problems for really sensitive equipment. Plus the part of the system that does the switching will eventually wear out.

The second type of ups has power always coming from the battery via an inverter . The line power via a power regulator keeps the battery charged as needed. In this case, no real switching needs to be done. That is an over simplication, but the power will or should be rock solid.  Generally these types of ups’ are more expensive.

Given you just a thimble full lof information. You need to check out any ups that you might want to use in detail. But at least you have a bit of information to start with.

——————————————————————-

Adapter cable for the APC  rj45-rs232 cable

The jack in the UPS may be easily use a 8 pin RJ45 connector. It is easy to construct the cable by cutting off one end of a standard RJ45-8 ethernet cable and wiring the other end (four wires) into a standard DB9F female serial port connector.

PC Signal PC pin UPS Pin UPS signal
RxD 2 2 TxD
TxD 3 8 RxD
GND 5 7 Ground
FG Shield 4 Frame Ground

——————————————————————-

Oldie but goodie repeat. Under five dollar emergency telepromter (excluding cost of camera and computer/ Dollar store mirrir and glass pane from a Dollar store document holder. Boxes wherever you can find them.

tprompt

——————————————————————-

Recently a local television station waas conning people to give up their old computers for free. It really upset me. Unless the equipment is dead, most of the old equipment is still useful. Here is an example of an old pentium being useful with Ubuntu 10.04. I probably could of even used a newer version, but I have not updated the server yet.

Update: Even more insane as allegedly :german-ministry-of-education-throws-away-pcs-for-190000-due-to-infection. http://www.heise.de/newsticker/meldung/Schwerin-Virus-verseuchter-Rechner-Ab-auf-den-Muell-damit-1851718.html. They could of been saved with Linux.

——————————————————————-

Update mini-cabinet.

P000-256-309-620-f1016

——————————————————————-

Coming soon we discuss separately ldap and the Cobbler server.

——————————————————————-

Baked chicken, but with more Italian seasonings instead of barbecue sauce.

P000-256-311-627-fb023

Good day.

Making it.

Leave a comment

Using a spreadsheet:

 

————————————————————————————————–

Traditionally. I have avoided wireless like a ton of falling bricks.  Security requirements for wireless changes so fast that it is almost cost prohibitive to use. But so it goes. You say you will never use wireless, but you gently get attracted to using it like a drug. My first experience at using wireless was going to a retail estblishment and taking advantage of their network. Then came the time I was staying at my brother’s home while the AC was out, so to get internet I had to use wireless. Now with the Nexus 7 wireless has to be part of the home network.

Let me digress here for a minute. How have we connected computers together in the past.  Originally people  use what is know as serial via modems (the old fashiion kind that hooked to the telephone line) or directly between two systems via serial ports. For more details see: http://www.instructables.com/id/Legacy-networking-with-linux/. Then there was good old Laplink to transfer data between computers. Then we finally had real computer networking in such ways as token ring, arcnet, a host of others and now ethernet.

As I said in the last article, you can hook together two computes with just a crossover cable.  if you want to connect several computers together you would need a network switch. It plays traffic cop to manage the communication between several systems. Home networks are sort of the new railroad. Instead of watching little cars go around on a track, we are watching movies from a network and the like. Some of the computer nerds might have more than one network.

In some cases we might want to have more that one network for various reasons. One for the media room and one for the computer room as an example. Of course at some time you will want to connect them together. The easy way would be to run some cable between two points. We have a training room that hosts a thin client network. Except for internet access, it is pretty much standalone. But to connect it to the main network requires cabling.

Did not want to run cabling between the two rooms. Had to have a better plan. There was alreading electrical wiring between the two rooms, Could I use that?  Actually, yes you can. There are adapters available known as EOP (Ethernet over power) that will let you do just that. When I need to update the server, that is what I use to connect the main network which has access to the internet.  So far so good.

Now comes the fun part. What if I wanted to use the network where neither cabling or the EOP would work such a a home down the street. Utoh, there comes that nudging… Yep, it is time to use wireless. You could have a whole bunch of wireless devices just all connect back to what is known as a wap (wireless access point). Most modern routers with wifi can do that. But what if you have computing devices that either do not have up to date wifi security or just do not have wifi?

You could use two wifi routers by brdging them, but then that leads to extra management of fhe wifi. I really wanted something simpler. You can what is know as a wireless access client that can connect to the first wireless access point. Virtually no extra maintence once you set it up. You will need the mac access address and the ssid of the network access point you want to connect to. Good, no need to connect to anyone elses network. You have to be careful though some wireless access points claim also they can be clients, but that is not always true. Then you can attach a switch to the access point client to use more than one computing device. Of course the speed of that connection will vary with added devices.

That is my small trip into starting using wifi devices.

Note. You do need to use wfi security in setting up all the devices. Do not just connect them together and expect them to be secure. That is another article to get into the details of wifi security.

————————————————————————————————–

Update:

If you want to use an ipcamera with motion, it is easy but you have to know about the camera. I ended up going to the zoneminder wiki and found the answer for my camera. Setup is the same, but you have to add two lines to motion.conf.

netcam_url http://19.168.10.85/videostreadlocationsomekindof.cgi
netcam_userpass user:password

For us  it was:

netcam_url http://192.168.10.85/video.cgi
netcam_userpass user:password

————————————————————————————————–

Let’s get wired!

Almost but not quite.  Had to replace the ethernet cable from the bridge (aka modem) to the network router/switch.  An ethernet cable looks like a telephone cable but twice or so as big, Back to the cable.  If you moved the cable the connection would fail. Not acceptable. Fortunately, had the tools and parts to repair the situation.  Many places use wifi, but there area lot of business establishments that do not allow wifi for security reasons.  Since most tablets require the internet to be fully useful so that turns the units into bricks per se.What do you do?  You can now get adapters to connect touchpads to a hard wired old fashion network.  Usually consists of a usb connection sometimes known as an On-The-Go or OTG cable and then attaching the ethernet adapter. Of course you still need that cable to connect to the network. Where do you get the cable? If you are at a business establishment, they probably have a spare. Looks better if you already have a cable with you though.  Most better electronics stores now carry them. You have to be careful. I was at Walmart today and they had one for forty dollars. Eeeks. They had some others for between twelve and twenty dollars. A decent length of cable should be under ten dollars.You have another alternative though and that is to make your own cable. If you take any amount of IT classes, you will be required to make a cable at least once.  With a lot of companies converting from wired to wireless you can almost get old eight conductor cable for free. You will still need to get some of the RJ-45 plastic ends. Telephone wire uses RJ-11 ends. Generally there are different qualities of cable such as cat5, cat5a, and cat6. For a short cable on a traditional network, the qualities are not that critical yet. If your needing to make a lot of cable, it makes sense to buy cable in bulk.Most networks are in what is known as the star configuration. There is also the bus, the token ring, and modified networks. We will skip those for now.  That means everything connects into one set of points like the spokes of a wheel.  When a cable is made the configuration of the wires is very important. You have two ways to connect the medium dependent interfaces (MDI for short).  You can have the MDI straight though cable or you can use the MDI-X (MDI-crossover). This use to be very critcal what cable you used.

If you used a cable from a computer to a switch, the MDI cable usually worked just fine. Between routers usually used the crossover cable. Eventually those units had switches to allow the use of non-crossover cables. Today most routers now support auto-mdi so that it is not that critical as your the standard configuration. In most cases you will need just to have switches and standard cables  to connect everything together. Now there is an exception. What if you want to hook two computers directly without a switch. You would then just use a crossover cable. Cool.   So how does the cable go together. Most cables have the eight conductor inner wires color coded in a certain fashion.
.

Ethernet cabling comes in two versions usually comes in two versions, Tia/eia 568a and Tia/eia 568b.  Tiaa/Eia 568b on both ends what is used for traditional MDI cable. If you want and MDI-X cable you would have one end as Tia/Eia 568a and the other end as Tia/Eia 568b.  There are other  configurations, but these are the most common. Sometimes the configuration is known as wo-o-wg-bl-wb-g-wbr-br and wg-g-wo-bl-wbl-o-wbr-br.   So you have four pairs of twisted wires.  See typical cables as shown below.

Let’s make a cable.

1. You will need an RJ-45 crimping tool. Some of then also support the RJ-11 for telephone lines. You can get them cheap, but it is better in the long run to get a better one.

2. You will also need at least two and better if you have more ends in case you make a mistake. Been there done that.

3. Use the double edge cutters to gently cut the outside casing about and inch or so from the end of the cable without damaging the inner wires. This may take a little practice. If you make a mistake just cut off the bad part with the single blade on the tool.

4  Sometimes if is better not to get the whole sheating cut through to make sure the inner wires are not cut. Then just tear off the sheathing end, Notice the four twisted pair.

5. Now separate all the wires.

6. Then line up the wires. wo-o-wg-bl-wbl-g-wbr-br,

7. Uneven lengths trim them with the single edge blade.

8. With the clip side facing down gently insert the wires making sure they stay in line. Then press in the cable as far as you can. The outside cable should fit inside.

9. Recheck the cable color selection, if not correct, pull the wires out and reposition them. Then reinsert the cable. Also takes a bit of practice. Put the cable in the crimping tool and PRESS DOWN. Remove the cable from the crimper.

10. Repeat the prior steps for the other end.

11. Now you may want to test your cable. There are two kinds of testers, One tests the cable using both ends. Never use this tester with a wire connected to the network or it most likely will be destroyed, Read the manual how to speccifically use the one you have,

There are also testers designed to connect to a live network. But even then some can give false positives that the connection is good. Again read the manual on how to use it. Units made by Fluke have been the standard.

If all is well, use your cable. That is the real test. If for some reason you made an MDI cable and you need and MDI-X cable, you can get an adapter so that you do not have to redo the cable. Usually carry one with me on jobs.

That’s it….

Note: you will eventually need a new end. They do not last forever. But you are ready to take care of that now!

——————————————————————–

Always trying to organize things. thought about a small semi-hutch to put stuff in.

Screenshot from 2013-02-22 05:09:36

Now the basic frame if made, need to do the drawers.

P000-256-303-596-f1016

——————————————————————–

Poached egg sandwich.

P000-302-297-586-49037

Good day!

What’s up doc?

Leave a comment

Want to increase the sound volume of your touch pad or the like? This is for units that have the speaker on the bottom of the unit.  Try this neat trick. Take a length of about seven inches of one inch diameter pvc pipe. Your size may vary,   Most hardware stores carry pvc pipe, but you might have to get a long piece just to make a short piece. I had about a two foot long piece already,  Cut a groove in the pipe just wide enough to insert your pad. You probably do not want it too tight. You will also need two elbows. I just used right hand elbows as they were a lot cheaper than the slight angled ones. Press the two elbows on each end. Get your music going on your touch pad and insert it. You should have more than twice the volume without using any kind of electronics with your new megaphone!!

——————————————————————————–
The Nexus seven is beginning to grow on me despite limitations I could easily get around with a linux box. Yes you can install linux on the touchpad, but it is still not a complete adaption last I heard. Then too, you lose the Android environment. Seems that more and more applications want you to root your system if you want to take advantage of their software. In someways that could be a deal breaker, Thought about getting a cheap tablet to experiment with that and keep the Nexus seven a bit more private.First project was to see if I could serve out a gpxe linux install from the Nexus 7.  It would be so neat to be able to start a linux install on a traditional pc from a tablet device. Already do this all the time from a regular server (see the last article). For some reason of the web servers I tried for the android they were not up to the challenge,  Disappointing, but not the end of the world.

There are some plus sides to having the server, You can run html and javascript applications. So you can program your own programs without a development package requiring you to learn system specific set of instructions. Javascript and html and be rin from most any modern web server,  Copied a javascript based tetris game from the local web server onto the Nexus 7 and it seemed to work fine.  You will want to have a text editor on your Nexus seven for doing such projects.

Downloaded several editors. Played with them just enough see that a sentence could be saved.  You start to learn the file structure of the Nexus 7 when you save a file. You begin to contemplate how you want to organixe the files, Since noted would probably should not go into the same directory as the web related file you have created.

Think last time I related that remote desktop clients did not seem to work. There was an update today and now they seem to work fine.  I was able to get on my old XP machine fairly easily. Amazing how realistic it seems to access your old desktop with a touchpad. You forget you are not really sitting in front of the machine, Rdp represents an ultimate way to get away from sneaker support. Wish I had the touchpad as a tech not so many years ago.

Using the ssh application more and more.Though I did wish you dould use it in the lanscape view instead of the portrait only mode. Need to look at the setting a little closer at the settings. Amazing how things have changed since the early days of the eight bit computer. Something which we should not take lightly.

Update: One of the main reasons I wanted the remote desktop application  was to access some linux boxes via a gui. So running ubuntu on my Nexus 7 was not needed. With the update that allowed access to the MSWindows boxes also allowed me to  access Linux boxes with xrdp installed. Instead of also using vnc, means less applications to deal with. You can access them all with just one application.Though the unity interface is not my favorite interface, I could see some possibility of use here with any touchpad.

Works with the Raspberry Pi also.

——————————————————————————-
Linux Mint is kind of taking of the reigns of being one of the most popular linux distros. Like installing any operating system the traditional way, you can run into roadblocks.  For example, you may not be able to burn a linux cd, the machine you want to load linux on has a broken cd/dvd rom, or a host of other reasons. What we are about to do is what is known as pxeboot networking. Another words we will use a web server to get us started with a linux install on a system. Traditionally you actually had to have several servers to do the network install. You had to modify a Dhcp (Ipaddress servers) server,  a Tftp (boot files) server, and among other systems which general required a lot of setup and the blessing of the system administrator,

I tried this with the python web server, but you have to have all the files in one directory from what I could see.I just did not want to take the time to do it.

$ python -m SimpleHTTPServer

I went ahead and used the Apache2 web server. You can get portable versions of the Apache2 web server so that there is not much to install. But before I get ahead of myself, we need a way to boot a computer to access the network. Etherboot led the way in this direction and had now graduated to Ipxe. (more information at www.etherboot.org).So we need to make a boot disk for the computer we want to install linux on. You have severaal choices. For our purposes a floppy will be used. You can also use a cd/dvd rom disk and or a very small usb stick. We need to go to www.romomatic.org to create the boot media for our system.

We chose the floppy disk. Now even though we can use the floppy disk to access the network, we need to add a short script to let the floppy know about the web server we want to use. in our case the script was for oesrvr1 using the bim directory. The script is pretty standard so all we had to do was to change one line of the script.

  #!gpxe
  echo Performing DHCP on first network interface
  dhcp net0
  set 209:string pxelinux.cfg/default
  set 210:string http://oesrvr1/bim/
  chain ${210:string}pxelinux.0
You will press the customization button to get the text box where to enter the script. If the script is ok, the you want to save it to your existing system.It is usually saved as a very long name so I use the gui to rename it to test.dsk.
Now we need to get the image written to the floppy and that is pretty easy,
$ sudo dd if=test.dsk of=/dev/fd0
The client machine is ready to go, so now let us look at the server. You probably want to make a special directory such as bim in your document root. /var/www/ .
$ sudo mkdir bim
$ cd bim
Now that we have a place to store the files we need to download them. Remember we will not have to burn a dvd. Here is where the files are, so all you have to do is download them directly to your web server,
$ sudo wget http://debian.linuxmint.com/incoming/dists/testing/main/installer- i386/current/images/netboot/netboot.tar.gz
The we need to expand the archive.
$ tar zxvf netboot.tar.gz
Then you need to get the cdrom image file.
That is all you need! Make sure your apache2 web server is running thoough.
$ sudo service apache2 status
Apache is running (pid 12345)
Now it is time to boot up your client machine with the ffloppy media!
In just a few seconds you should get the install menu. Now the rest of the install should come from the internet. That is another article. We have our server set up to support several linux distros. i.e. Debian, Mint,  Ubuntu, and others. Using a standard boot media, there is.no need to burn new cd’s every time a new version of linux comes out.  Have fun!
Even if your computer does not have a floppy drive you can get a usb floppy drive fairly cheap. Since the data on the floppy is so small, it should not take long to load even with a usb floppy drive.. For mass installes we recommend the cobbler, drbd/clonezilla, or as a last resort the Fog software. I will talk about them later.Last but not least you can also use this method to install MSWindows systems..
——————————————————————————-
Watching what is going on in your own home or even at your business is becoming more and more of a requirement for peace of mind. Schools even use them to prevent and or document cheating.  Had to set up the web cams in the testing center where I use to work just to do that. You probably do not want to spend a lot of money at first. If you have a Raspberry Pi ($35 us), Memory card ($10 us) to install Debian linux,  and a cheap web cam (under $15 us), you can set up your own system very quickly.  For more information see: http://www.raspberrypi.org/downloads and http://www.instructables.com/id/Raspberry-Pi-Jack-of-all-trades/.

It is wonderful that the Raspberry Pi (aka RPi) is supported by Debian linux. There already so much software for Debian that the Raspberry Pi can take advantage of. One such piece of software is Motion. Motion is a security cam server software than does not require a gui, That is you can run Motion without a gui installed or activated on the Raspberry Pi.

Let’s get your system up to date (might take a while if you have not updated very recently).

$ sudo apt-get update ; sudo apt-get upgrade
$ sudo apt-get dist-upgrade

Now let’s install Motion

$ sudo apt-get install motion.

Does the RPi see your camera?  (aka list usb devices attached.)

$ lsusb


Bus 001 Device 004: ID 046d:08a9 Logitech, Inc. Notebook Deluxe

if not, you may need to get a more mainstream camera. usually Logitech sets the standard. I just used a cheap refurbished knockoff. Your output will vary..

Do a little configuration:

$ sudo nano /etc/motion/motion.conf

In here there are a few basic changes that you need to perform:

  • Daemon = OFF to ON
  • webcam_localhost = ON to OFF

You can change other settings but it’s recommend you don’t take more than 2 frames, and you been the default frame pixel size, for stability.

To ensure that the motion service will actually start as a daemon we need to change another configuration setting, so enter the following:

sudo nano /etc/default/motion

Then change the value “start_motion_daemon=no” to “yes”

Let’s get started:

Finally you can start the motion service to stream the web cam images

sudo service motion start

Then after about 30 seconds browse to the new web interface, which should be at the below URL (where 192.168.0.100 is your Raspberry PI’s IP address yours may vary)

http://192.168.0.100:8081

Hint: if you do not have direct access to your RPi, you can use http://www.instructables.com/id/Red-October-network-discovery/ to find it on the network Frequently I will hook up the RPi to the network without a keyboard, mouse, or monitor and then remote into the unit,

Source: http://www.instructables.com/id/Computerized-video-security-setup/

Note: Most any linux box will allow you to set this up. I have it running on an Ubuntu x86 based server. So an old pc might work just fine without getting the Raspberry Pi.

————————————————————–

preg

(Click on the picture if you do not see the animation)

Convert a series of pictures into an animated gif is real easy.

First you want to collect all the pictures together and order them by name in the order you want them to appear.

Screenshot from 2013-02-20 23:00:42

Then let’s install some software.

$  sudo apt-get install imagemagick

Now we ned to make sure all the pictures are the same size.

$ mogrify -resize 640x480 *.png

The let's make the gif. You maybe also able to do this on other platforms, but I have not tried it yet.

$ convert -delay 100 *.png preg.gif

View your new gif.  Great for web pages and education projects.
—————————————————————
Thanks!
www.instructables.com/member/davijordan reached it’s first 10,000 views!
www.instructables.com/member/computothought has 104 followers and others who helped us get to over 455,000 views. Near 20,000 views in January 200D alone and in each of the past several months!!. We had 223791
views in 2012 alone. Close to an average of 2000 views per instructable.
—————————————————————

 Convert a short movie into a gif.

How to quickly and easily take a short film and turn it into a gif.

Make or use an empty directory for the intermediate pictures.

$ mkdir gifit
$ cd !$

Move the movie to that directory

Create the pictures:

$ ffmpeg -i PICT0220.AVI -r 1 -f image2 %05d.png

The pictures should all be the same size as they came from a movie.

Now let’s make an  animated gif

$ convert -delay 100  *.png  hand.gif

Note: check the documentaion for the programs to get more possibilities.

The movie: http://www.youtube.com/watch?v=tIpANXRL5ok

ffmpeg for other platforms:

http://www.ffmpeg.org/download.html

———————————————————————-
White sauce pizza. A change from the old tomato sauce based pizza.
P000-271-308-616-e7017
Good day.

Happy valentines day!

Leave a comment

Oldie but goodie

From: http://linuxshellaccount.blogspot.com/2009/02/valentines-day-linux-and-unix-ascii-art.html

——————————————————–

Renewing things:

PICT0108.JPG
PICT0109.JPG
Had a print server and a switch right next to each other, but I was using a 5-6 foot cable to attach them together. I did not want to cut the good cable and I did not want to go out and buy a specialy ethernet cable at the store. I did have a cable that needed repair. took the good cable from the switch/print server and put it where the bad cable was. took the bad cable and cut it to length and added a new end. Two birds killed with one stone sort of.

——————————————————–

One of my primary concerns is how to maximize computer resources. For example if you upgrade the memory on a laptop, you usually end up removing the the old memory. If the memory is still good why chunk it?  Had an old thin client that I bought for a few bucks, but it really needed more memory. Forgotten all about the unit untill I was checking out what thin clients could be used with the newer thin client server,. Low and behold, after looking inside the the client, it had a slot that looked just like the same form factor as the memory from the laptop.

Awesome.  Now I can upgrade a thin client to work with my newer LTSP server!!  One more piece of equipment back to work. The memory turned from a lemon into lemonade. Or as I started with “Upgrade one and then upgrade two.”  Reuses for computers III is out! See it at: http://www.instructables.com/id/Reuses-for-legacy-computers-III/

——————————————————–

Pentium 1 back to work with Slackware 14

——————————————————–

PICT0117.JPG

Harvest the parts from your dead equipment. Generally passive parts like the power connector do not go bad. Here we liverated the power connector for another project. may not seem like much, but befroe you know it you are saviang some real money. you did not have to spend at the electronics store. You might even be able to reuse the pcmcia wireless card for an old laptop.
———————————————————————-

Today was sort of thin client day. Updated the LTSP server. Then I decided for the heck of it to see what of my Compaq EVO T30 clients would work with the server. I had tried on before and it did not work. At the time I really did not investigate why. Today I did take the time to see what was going on. Apparently the thin client did not have enough ram (needs 64 megs) to boot. I happened to look inside the unit and saw there was a holder for a dime that very much resembled a laptop memory slot. went to the parts closet and took out the old dimms I had culled from laptops that have long since died. Would they fit. Yes they did! The non-EDO ram worked just fine. The thin client now worked with the latest server. Ended up upgraded a few more from spare parts.  So I do not need the old server I had to keep the thin clients happy. I need a new mythtv server. Kill two birds with one stone. I will probably save the hard drive and put in a new drive for the mythtv install.

But there was another part. I had one thin client that was password protected. That led me to want to reflash the unit. Do not have Compaq’s fancy Rappaport installer software. But there is a program called netxfer that will do the job. I had used it once, but not very successfully. This time I did a bit of research. Normally I avoid using Redmond Washington software like the plaque, but netxfer does not run on linus out of the box. So I pulled out the old system from the mothballs that would run the software. God it is slow. Cranked it up and downladed the firmware for the thin client I needed to reflash. At least I thought It was the right software. Apparently there are two kinds of firmware downloads one for the Rappaport oftware and one for the netxer software. having downloaded the wrong version, I was pulling out my hair frustrated why the netxfer could not deal with it. So I looked at the files and found that I was using the wrong version. Back to the net to download the right version.  After extracting the files it was time to try again.

To use the netxfer software you have to have sort of a direct connection via ethernet via a switch where the internet and your local dhcp server is not involved. Luckily all I had to do was disconnect one cable. Then your have to set the ipaddress of the netxfer host to 10.0.0.1 with a net mask of 255.255.255.0. I set the gateway to 10.0.0.0.1 to insure there were no problems. With the bootp.bin (had to be renamed from the downloaded source filesnames, Everything should of been ready. So I started netxfer. The I went to the thin client and turne it on holding down the P key.  Then it started it;s sequence to look for a host to download the firmware from. Both machines sat idle for a bit and the the firmware upload to the thin client started. the upload . The upload did not take that long. Then the thin client once it received the files started unpacking and installing the files. That did take a bit. Once all that was done, the thin client rebooted on it’s own. Tada, the unit was useful again. One word of caution is that if either the upload or the unpacking is interrupted by a power outage, you can wave good bye to the thin client. I would definitely use a ups on botht he xetxfer host and the thin client to not have to worry about power issues..

There are a couple of good instructables that allow you to use the compaq evo thin clients in other ways. Definitely going to look at them.

——————————————————–

After playing with my Nexus 7 for a while, I wanted to transfer some files to the unit. There were programs such as a spreadsheet that I wrote to work with qbasic.  Dosbox will certainly run qbasic.  Since Adosbox was available for Android I went and downloaded that. So far so good. Or so I thought.  Now how do I get the files to the Nexus 7. Can not use a usb drive. Hmmm. You pay for and then download an application that would get your files from a usb stick without being root. Why should I pay for something that should of come with the unit to begin with.

Now it is time to think out of the box. Well if I can download files from a web page without root, why can I not do that with a web server of my own? But how to do it. Alhough I do have an Apache web server set up, what about the times when it may not be available. Aha! The quickie web server (see links below) can be the answer. So I copied the files where I wanted to serve the files to the Nexus 7. then made sure they were there.

$ ls -al
total 284
-rwxr-xr-x  1 www-data www-data  16533 2013-02-05 11:11 file1.exe
-rwxr-xr-x  1 www-data www-data  16533 2013-02-06 10:11 file2.exe
-rwxr-xr-x  1 www-data www-data  37213 2013-02-05 11:11 file3.exe
-rwxr-xr-x  1 www-data www-data    212 2013-02-06 10:28 index.html
-rwxr-xr-x  1 www-data www-data 194309 2013-02-05 11:11 qbasic.exe

Did not have to, but I made a simple table of contents or index.html  That way it was clear what I really wanted to download. A good idea especially if you have a lot of files in the directory.

Now to download the files. So I pointed the web browser to oesrvr1/nexus7 if I was using the apache web server.

Just lick on the link… (if using a regular browser, it might look like this:

If you are using the quickie python web server without the index.html, it might look something like this. (You would connect to a port (8000) instead of the directory.)

Obviuously this is not a secure method of transferring files. But on your own private network, that should not be an issue if you are careful. The files were easily transfered to the Nexus 7 and I am happily using them now. Did not have to purchase a special app or worry about how to connect to the Nexus 7 with hardware. Which leaves me to say, If you have one or more computers, having a web server just just as important as having a flashlight for emergencies.

Update:

On MSwindows you will need some kind of mtp program that will recognize the Nexus 7.

With linux use gmtp to transfer files via the gui

With linux specifically Debian linux from the command line, you can:

# HOWTO Mount Nexus or MTP Device in Debian or Ubuntu

# Install MTP and its tools:
sudo apt-get install mtpfs mtp-tools

# Create a mountpoint:
sudo mkdir -p -m 777 /mnt/nexus

# Install mod fuse (or permanent in /etc/modules):
sudo modprobe fuse

# Plugin your Nexus
# Ignore the “New Device found” notification

# Mount the device manually instead:
mtpfs /mnt/nexus

# Open your favourite file manager and go to /mnt/nexus and transfer files
# When finished, don’t forget to dismount the device:

sudo umount /mnt/nexus

———————————————
Linux quickie web server
http://www.instructables.com/id/Quicky-web-server-for-linux/
Windows XP quickie web server
http://www.instructables.com/id/Quicky-web-server-for-MSWindows-XP/

Xp mtp hints:

http://forum.xda-developers.com/showthread.php?t=2012786

———————————————
Linux quickie web server
http://www.instructables.com/id/Quicky-web-server-for-linux/
Windows XP quickie web server
http://www.instructables.com/id/Quicky-web-server-for-MSWindows-XP/

—————————————————————–

Home made thin client: not dead yet diskless Pentium 1 233 mhz with 128 meg ram pxe booted into LTSP!

P000-259-274-515-f1016

—————————————————————–

Love these little gadgets. They allow you to use either compact flash or the memory cards (depending on the interface) Allows you to carry around an os without carrying around a hard drive that would be subject to bumps that can damage a traditional hard drive. There also maybe sata versions, but I have not really looked for one. If you have a system that supports sata, a usb drive should work just as well.  They are also great for allowing a computer to almost work like an embedded system. You can get the compact flash versions for both desktop pata and laptop pata versions.Inan earlier article you have see the picture of the pc router using the compact flash adapters.

P000-280-310-631-c9029

In fact one was used in the pc router instructable:

http://www.instructables.com/id/DIY-network-firewall-from-legacy-parts/

—————————————————————–

Quickie hangman game in bash:

$ ./hangman1
** You’re trying to guess a word with 7 letters **
Word is: ……. Try what letter next? a
Good going! The letter a is in the word!
Word is: ….a.. Try what letter next? e
Sorry, the letter “e” is not in the word.
Word is: ….a.. Try what letter next? i
Good going! The letter i is in the word!
Word is: .i..a.. Try what letter next? r
Sorry, the letter “r” is not in the word.
Word is: .i..a.. Try what letter next? s
Sorry, the letter “s” is not in the word.
Word is: .i..a.. Try what letter next? t
Sorry, the letter “t” is not in the word.
Word is: .i..a.. Try what letter next? d
Sorry, the letter “d” is not in the word.
Word is: .i..a.. Try what letter next? l
Sorry, the letter “l” is not in the word.
Word is: .i..a.. Try what letter next? s
You’ve already guessed that letter. Try again!
Word is: .i..a.. Try what letter next? n
Sorry, the letter “n” is not in the word.
Word is: .i..a.. Try what letter next?


blank=".................." # must be longer than longest word

getword()
{
 case $(( $$ % 8 )) in
 0 ) echo "pizzazz" ;; 1 ) echo "delicious" ;;
 2 ) echo "gargantuan" ;; 3 ) echo "minaret" ;;
 4 ) echo "paparazzi" ;; 5 ) echo "delinquent" ;;
 6 ) echo "zither" ;; 7 ) echo "cuisine" ;;
 esac
}

addLetterToWord()
{
 # This function replaces all '.' in template with guess
 # then updates remaining to be the number of empty slots left

letter=1
 while [ $letter -le $letters ] ; do
 if [ "$(echo $word | cut -c$letter)" = "$guess" ] ; then
 before="$(( $letter - 1 ))"; after="$(( $letter + 1 ))"
 if [ $before -gt 0 ] ; then
 tbefore="$(echo $template | cut -c1-$before)"
 else
 tbefore=""
 fi
 if [ $after -gt $letters ] ; then
 template="$tbefore$guess"
 else
 template="$tbefore$guess$(echo $template | cut -c$after-$letters)"
 fi
 fi
 letter=$(( $letter + 1 ))
 done

remaining=$(echo $template|sed 's/[^\.]//g'|wc -c|sed 's/[[:space:]]//g')
 remaining=$(( $remaining - 1 )) # fix to ignore '\n'
}

word=$(getword)
letters=$(echo $word | wc -c | sed 's/[[:space:]]//g')
letters=$(( $letters - 1 )) # fix character count to ignore \n
template="$(echo $blank | cut -c1-$letters)"
remaining=$letters ; guessed="" ; guesses=0; badguesses=0

echo "** You're trying to guess a word with $letters letters **"

while [ $remaining -gt 0 ] ; do
 echo -n "Word is: $template Try what letter next? " ; read guess
 guesses=$(( $guesses + 1 ))
 if echo $guessed | grep -i $guess > /dev/null ; then
 echo "You've already guessed that letter. Try again!"
 elif ! echo $word | grep -i $guess > /dev/null ; then
 echo "Sorry, the letter \"$guess\" is not in the word."
 guessed="$guessed$guess"
 badguesses=$(( $badguesses + 1 ))
 else
 echo "Good going! The letter $guess is in the word!"
 addLetterToWord $guess
 fi
done

echo -n "Congratulations! You guessed $word in $guesses guesses"
echo " with $badguesses bad guesses"

exit 0

—————————————————————–

Take a picture and convert it to an html file.
$ jp2a –color –html –fill –background=light  hs.jpg –output=hs.html

before:

hs

After:

hsweb

—————————————————————–

Italian tostadas

P000-256-322-656-f1024

Good day.

Spooky?

Leave a comment

Cloud computing what is it. It is a service of various types. Traditiional you have accessed a web server for your needs. There are actually many ways you can use “The Cloud” as a service (AAS). One that is becoming more prevelant is Infrastructure as a service (IAAS). Wikipedia defines it as:

“In the most basic cloud-service model, providers of IaaS offer computers – physical or (more often) virtual machines – and other resources. (A hypervisor, such as Xen or KVM, runs the virtual machines as guests.) Pools of hypervisors within the cloud operational support-system can support large numbers of virtual machines and the ability to scale services up and down according to customers’ varying requirements. IaaS clouds often offer additional resources such as images in a virtual-machine image-library, raw (block) and file-based storage, firewalls, load balancers, IP addresses, virtual local area networks (VLANs), and software bundles. IaaS-cloud providers supply these resources on-demand from their large pools installed in data centers. For wide-area connectivity, customers can use either the Internet or carrier clouds (dedicated virtual private networks).
To deploy their applications, cloud users install operating-system images and their application software on the cloud infrastructure. In this model, the cloud user patches and maintains the operating systems and the application software. Cloud providers typically bill IaaS services on a utility computing basis: cost reflects the amount of resources allocated and consumed.”

What a mouthful. That means anything you use on the computer comes from a other system(s) on the internet.  You do not have to put an operating system on your computer. You do not have to have a way of storing data locally. You have what is traditionally known as a dumb terminal. Does not mean you are dumb, but your computer system is controlled remotely. There has been a drive in this direction for a long time with the use of the thin client. Thin client is a low resource machine that uses servers on the network to do the heavy lifting so to speak.

Where I use to work, they used thin clients in the public access labs. Hopefully it would reduce support. The units they used were small desktops and you had to support them just like a regular desktop. You always were seeming to have to update the software on the units. Fortunately, I was not involved directly with all that. A better situation would have been to have a thin client without a tradtional operating system on the unit, but do have software that could be completely be loaded from the network. I made the suggestion to do that, but the ideas fell on deaf ears.

With IAAS, Sneaker support (having a technician to go out and correct problems) is reduced, All software issues can be remedied remotely from one central point. You also have the advantage that data is no longer stored on the local system. So someone could take the unit and and then not be able to exact sensitive information from the unit. All data is held in a central point, so making backups (duplicates of business data) easier to do. Only scraping the surface of what all can be done. Here is a url for a short very unprofessional video about what could happen when you bootup a system that has been set up for IAAS.

Ltsp boot example.

Actually do know what is going on and was just kidding of course. It has been a while, but I have talked about LTSP (Linux termial server project) before in an earlier article. Sort of an in house type of IAAS that companies can implement on their own.

More information at:
www.ltsp.org

——————————————————————————–

Made some coat hanger tablet stands in another post using coat hangers, I wanted a stand that would be less likely to damage a touchpad and be easy to store while traveling. This what I dreamed of after seeing another idea.

Draw your pattern.
Trace it over two pieces of thick posterboard.
Cut out the pieces. (Just using one long piece is hard to fold.)
Double tape the backend of the two pieces together.
Bend and insert your tablet.

——————————————————-

Years ago there was a song called “Where have all the flowers gone”. I sort of wanted to do an introduction based off of that.  In a way the Intel i386 based architecure is not gone, but there is certainly a new major player on the scene. The Arm architecture is the new kid on the block. Originally used for embedded systems, is now coming into the main IT stream. There are desktops, laptops, tablets (aka palmtops), servers and etc that the I386 based systems have done for so long. What is the advantage of the Arm cpu’s?  They are cheaper, require less electrical power, and require less space just for starters.

The picture represents four different arm or arm derivative based devices that are all within a foot or so of each other. Almost like a whole network of devices.  None of them are the traditional Microsoft operating system based devices either. They are all using some kind of unix lookalike operating system. That is a good thing as it allows similar software to be used on many devices without a whole lot of additional development work to get software to run on the devices. Within the picture is a server, palmtop, network router, and a low end desktop. What are the devices in the picture?

First in the upper lefthand corner is an NSLU2 that was originally used as a networked address storage (aka nas) device front end. Linksys was kind enough to have built the unit so that you could bootstrap other operating systems onto the unit. Instead of running the original firmware, It is now running the Debian (squeeze) linux operating system. So instead of being a single purpose unit, it can now do all kinds of things. At this time I can still use it as a file server much like the nas. My main use for it is a music server (daap) and as a web server. At one time I even ran the famous wordpress blogging software using the apache web server. Even write my own programs for it to do special projects using the C language.

Next up is the Airlink101 network router. Originally the router had the company’s firmware, but thanks to some enterprising souls, I use an alternative firmware known as DD-WRT.  DD-WRT enhances the capabilites to what many expensive commercial routers can do.  Many plastic box routers sold in the retail stores are now made so you can not use alternative firmware. To me that sure reduces the values of the units not to be able to upgrade them with third party software. There are exceptions though. Mainly I use the router for connecting to wifi devices such as a touchpad. I do not use wifi on the main router.  A bit of security there maybe. Then it is easy to just unplug the router when wifi is not used.

Down to the right, sitting on a table in a homemade white case is the infamous  Raspberry Pi. It is sort of a desktop, Using a Commodore 1702 monitor with it. Despite it’s size, you can have a gui desktop, just like a traditional desktop. I sort of call it the NSLU2 with super powers. It also runs the Debian (squeeze) linux. One thing I like about it is I can swap the memory card, so one minute it is a desktop and the next, it is a network media streaming device. Sort of jack of all trades as it can also be a server. It also be used as a thin client for the Linux terminal server project.  Like the NSLU2, you can slo program your own software on it. Both the NSLU2 have a great library of software you can download and install. No reason to reinvent the wheel for most things.

Lastly is the Android touchpad. Like the above unit there is a tremendous amount of free software you can install. My main needs were a portable remote desktop viewer, text based terminal for logging into servers to do management. running my own developed software, and lastly as a web client. There is so much software you have access to that is served from web based devices. We have our own local web server with many applications from business applications, educational, and recreational too. The Android tablet can also be used to bootstrap a network pc for software installation via Ipxe using a wireless connection. I could go on forever. But lastly sometimes I just like to use it for listening to music from the web.

Where have all the i386 cpu’s gone, Long time ago. They are slowly being replaced with Arm based systems.

——————————————————-

Arduinos are the hot item when comes to microcontrollers right now but there are others that will still do quite a bit and do it on less power. For example you can control your sprinkler system, have a burglar alarm system, and many other projects that will all run off of just a yard solar lamp.  A  burglar alarm system that does not run off the car’s battery is a real plus. Virtually impossible to disarm unless you know where it is and can get to it before it goes off.

There are tons of projects for the Atmel 2313 (and related) chips in particular. You could make a toy for your child’s holiday gift such as a homemade robot. That adds meaning to the gift given to give of yourself. Another thing I like about the micro-controller is you do not need some fancy setup to program it.  You can virtually use an old parallel cable and a computer with a parallel port that can run the free development package). The parallel cables are discarded by zillions. We made a special adapter that could be used for many things, but the principal is the same.

Once people hear about your projects, you may be asked to do one for someone else. Sideline business? If nothing else it will allow you to be more valuable to a potential emplyer. As they say “The more you know!”

Surprise your kids! (http://florin.myip.org/blog/how-make-halloween-creepy-blinking-eyes-atmel-avr-microcontroller)

Note: Some parallel port interfaces (especially newer ones) may require a few resistors to help protect the parallel port.

——————————————————

ave had a chance to play with the Google Nexus 7 that runs Android (I think was built by Asus ) for little over a month now.  Generally have a good thoughts about it though there are just a few reservations which I may discuss later. Since the unit has been out a while, you probably already know the specifications of the unit (you can use you web search engine to get the details if you have not.) I was lucky enought the get the 32 gigabyte version of the unit. Getting anything less than that could make real challenges for you.

What was the first thing I added to the unit. first was some experimentation with some home made stands. Even the dollar store had a plastic stand. I based one of my experimental stands off of it.

The main reason why I wanted the unit was to see how web applications work with touchpads and maybe also develop some software for the unit. Found out right way that the touchpads react differently than the traditional web browser does with web pages. That meant I would have to rewrite some code on the server to better accomodate the new technology. Even the Chumby had for the most part no problem with existing web pages. That leads to the second part about developing software for the unit. Well the Android development package despite preaching to the otherwise became pretty much closed. Or as they say, if it walks like a duck, talks like a duck, and acts like a duck. then it is a duck. The Android development system was forked. That means it was  copied and the copy is still open source. More about that at some other time.

In using the Nexus 7, I found that they had an app store by Google of course. There are a lot of good free applications that you can download.Some will automatcally download and install on your unit and others require you to give special permission to allow for installation of an application. You could also uninstall applications fairly easily, if you found a bummer of a program.

Installed several applications to help fullfill my needs. One was an secure shell application that would allow me to access the servers I manage so that I dould access them as if I was at any computer using the keyboard to do admin duties. Another application was an RDP client that would allow me to remotely access remote systems using the gui interface of those systems rather than the command line as I would do with SSH. Had a bit of trouble with that. I may get out my old MSWindows XP box Insteal of using linux as a server to see If I mave the same kinds of issues, Then maybe I can remedy the problems I am having with rdp. The ssh app works just fine.

Though the Andoid development system is not really my cup of tea, I did download dosbox and “x11 basic”applications to do any special project I want to use. That also means all the source code I have developed for other systems can be used immediately without reinventing the wheel. Also downloaded an office package, but have not installed it as of yet. You really probably need and external keyboard to take advantage of that software.

For relaxation you can always listen to music from the web. Of that takes some bandwidth. Already have most of the music I like on a local server. I downloaded an applicaton that will play music from a server that supports the daap protocol. Traditionally daap was used in the Itunes world. EVen apple has changed the way that works for them. Ironically I can access a daap server with no problem at all. Apple based system do not want to access that kind of server unless you want to reinvent the wheel of your securty or your Apple Ipad or the like. Another reason I did not want an IOS based device. You can always get movies and other video from Youtube and the like.

The last major area I wanted to talk about is connectivity. Have to admit that like most seasoned computer users, you like to attach goodies to your system. Out of the box, with the Nexus, 7 out of the box you are out of luck to add anything such as usb drives to your unit. Not to say you can not, but you are expected to do everything over the wifi connection. There is special hardware you can attach to the single microusb port, but that cost big bucks. My second gripe in that direction is that if you want to hook a usb drive to the Nexus 7 you have to have super powers to do that. That means you have to disable the security on your unit to use the device. Not good.

Another issue is that a lot of companies will not let you use a wifi enabled device at their location. Again you feel kind of frustrated. At home I do not like to run wifi either. In fact I have a special router just for wifi that usually stays off unless I have to use it. But there is an answer.   You can get what is known as a OTG (on the go) cable for you unit. Good luck getting one for your local Nexus 7 from a local brick and mortar store. You can get one from off the internet from places such as Amazon. One advantage of the OTG cable is that you can connect keyboards, mice, and “usb to ethernet” devices to your Nexus 7 without super powers.

After searching the web, I found way to modify an existing usb cable so that it works like an OTG cable. You do have to have a female to female adapter to hook up the extra goodies. The easy way would have been to just put an female adapter on the usb to micro usb adapter. I just took two usb female adapters and made an adapter cable (shown above). As a tech it always seems like you are making adapter cables such as the one in the last article to program microcontrollers. Now I can and do connect keyboard, mouse, and ethernet adapter to my Nexus 7. Though use of the battery is reduced by some amount when you do that.  Since I have made my own OTG cable, I will need to get a replacement for it. Off to the brick and mortar…..

Update:

Notice: do this at your own risk  Get a professional to help if you are the least bit unsure how to do it.  We are not responcible for and and all issues.  Do not do this on the cable that works with the charger!!!!!!!   Use a separate cable.

——————————————————

Knowledge about electricity is required. Get an expert to help if you are the least bit unsure. We are not responcible for any and all issues.

Great way to power your usb hubs if your pc can not handle it. Some hubs will not work with this setup, so try at your own risk.  Lot of people do this with the usb hubs, but I wanted to be able to use the hub without having to have the power attached.

——————————————————

Similarities:about coding.

Screenshot from 2013-02-04 12:35:15

Implementing:

rem start
Input “Enter your first name: “, yourfirstname$
Input” enter your last name: “, yourlastname$
rem process
yourname$ = yourfirstname$ + ” ” + yourlastname$
rem output
print “Your name is: “;yourname$;”.”
rem stop
end

Result:

$ ./logicchart
Enter your first name: a
enter your last name: b
Your name is: a b.

An oversimplification, but that is where it starts.

——————————————————

Sorry IHOP, you lose.

P000-256-326-664-c3022

Good day.

Diversity.

Leave a comment

Found a neat picture that is the ultimate in the steps you should use in recycling equipment.

recycle

Recycling experiment with per se non toxic chemicals. Pyrex not really required yet.

gold1

——————————————————————————–

More and more of the plastic routers you get from a retailer are limiting you from installling a third party firmware to make the unit more valuable. So it is nice you can put an old pc back to work and install the same kind of firmware you would put on the store bought routers. Also with the pc you can swap the nic cards for better nics without getting a whole new system.

Pulled out of the closet the pc I was using as a router and found that a few things have changed. I just went ahead and installed the latest openwrt kamikaze image on the system. What does the system have? Intel PII 266 mhz with 192 meg ram. The openwrt hard drive is only 2 gig. Thinking about using another case. The system actually has two drives. one with a minimal Debian linux to be able to get the latest image or dd (or install) to the openwrt drive. The Debian linux drive is usally left unconnected.

First thing I did was to change the dead motherboard battery.  Second  thing I did was change the password from the console.

There have been a few changes and a few quirks. When I cranked up the system it did not seem to see the wan (internet). so I had to do a couple of things.

# Copyright (C) 2006 OpenWrt.org

config interface loopback
option ifname    lo
option proto    static
option ipaddr    127.0.0.1
option netmask    255.0.0.0

config interface lan
option ifname    eth0
option type     bridge
option proto    static
option ipaddr    192.168.6.1
option netmask    255.255.255.0

config interface wan
option ifname eth1
option proto dhcp

First I had to add the wan interface to the /etc/config/network file. Those are the last three lines. then I had to bring up the interface with:

# ifup eth1

I also changed the default ipaddress of the lan from 192.168.1.1 to 192.168.6.1 so as to not interfere with my local network.

local network 192.168.1.x) > router > private network (192.168.6.x)

Then there were changes to some of the commands. You used to use ipkg, so now to update the system you would use (opkg replaced ipkg):

# opkg update

You can ssh root@openwrtbox and do everything remotey from the command line.

So far so good. Then I tried to access a web interface remotely. Did not work, So I had to install a web interface to the system. There are actually three to choose from. I chose Luci or the first on the list suggested in the install notes.  To do that you have to add the repository (where to get the files from). So you add that repository to the /etc/opkg.conf file. In this case it was just one line or the last line in the file:

src/gz snapshots http://downloads.openwrt.org/kamikaze/8.09.2/x86/packages
dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /jffs
src luci http://downloads.openwrt.org/kamikaze/8.09.2/x86/packages

Now you let the system know the file has changed, so again you do:

# opkg update

The you need to install the web interface. There are quite a few modules you can install, but I just did the basic interface. You can add more later.

# opkg install luci-web

At this point it would not hurt to do a reboot. You should then be able to see the router’s web page.

Cool!  Almost forgot. If you have more than one pc to connect to the router, you will need to get a switch.

Note: Some people say that using a pc for a router has much better throughput that the plastic store bought routers. Your mileage may very.

——————————————————–

Lets play with assembly language programming one last time.  This time let’s use dos assembly language programming. A program is a set of instructions much like a recipe. With this recipe, we will have to use commands like you might use stir in a recipe.To make this recipe, we will use debug.com which is sort of a simple interactive assembler/disassembler. Our goal with the program is to print out the letter A. Now that seems a bit simple, but you have to start somewhere. So fire up debug from the command prompt. We are going to use dosbox (dos simulator) to make it easy to capture images. Thall shalt document. But first let us look at the letter A. If we went to an ascii  (american standard code for information interchange) table we can see the letter A is 65. So far so good.. But the computer does not recognize that nunber as the letter A. You remember base 10 arithmetic. where you have ten fingers to work with to do math. Well the computer in this case has 16 fingers or base 16,.so we have to translate that base 10 A to a base 16 A. Base 16 is also known as hexadecimal. Fortunately there is a chart to do that so we do not have to calculate it. So base 10 A is 65, therefor base 16 A is 41. So we will have to use 41 to let the computer know we want to print out the letter A. Seemed like a lot of work, but it is not really.

Screenshot from 2013-01-14 03:21:09
The chart confirms the 41 is the letter A. Your computer’s brain has temporary storage locations known as regisiers. You could equate them as internal mail boxes.  We have two registers we will use dl and ah for the values we need to use.  We also want to use some commands not unlike stir for a recipe. In this case we will use a mov command to put data in the registers or mail boxes we just talked about. Lastly we will use the int command. That tells the computer to stop what you are doing and go do some special commands. What happens is Dos has some built in instructions that we can use to save a lot of programming.  We will let dos do all the hard work.so all we have to do is to let Dos know what we want done. Lets put those instructions together.
mov dl, 41  ; So we are moving the letter A into a register, so the computer knows what to print out.
mov ah, 02 ; We are letting the computer know we want the letter A to be printed to the screen. 02 stands for the screen
int 21 : there is that command that says hey dos, print out what is in register dl using the output location in register ah.
int 20 : Says stop this program and go back to where I was before I started the program.
That is all there is to the program. if you have started debug you should see a dash prompt. Type a100 to let the computer know you want to enter some instructions. So enter the instructions.and then hit enter on a blank line. you should get the dash again. Let’s see if our program works!. press g and then return. You should the the letter A on a separate line, and you should get the dash prompt again. Neat!! You entered and assembled your first program. Tada!!!
Screenshot from 2013-01-14 03:07:44
Now lets see what memory looks like where you entered your program.  Type d100 and return. What is there seems unreadable except  the 41, 02, 21 and 20 you typed in. b2 stands for mov into ah and b4 stands for move into dl. cd stand for int.  If that seems hard to remember you can always translate back what you keyed in. (aka unasemble. So type in u100, 107 and you should see your program again.
Screenshot from 2013-01-14 03:11:59
You can display memory again with the d100  use the gcommand to run the program. if everything was typed correctly, you should see the letter a.to see nothing has changed. If you turned off or reset the machine the program would be gone.
Screenshot from 2013-01-14 03:14:44
Now do not be afraid, but we are going to wipe out the program.press e100 and return. You are show the old numbers but you want to replace each one of them with 0. Once you are done, do the d100 and look at the memory. so your program is gone. No problem. We can do the e100 again and type in the numbers again b2 41 b4 02 cd 21 cd 20. when you get back to a prompt Type a g and return. you should see your program run again. Cool. What that means is you can enter the assembly code or the hexadecimal numbers for your computer to display the A.
Screenshot from 2013-01-14 03:15:17.
If you type the u100, 107 you can see the original code you typed in. Cool. If you wanted to have sentences print out you will use different code as doing thoie three lines over and over can be a challenge. Doing assembly on most machines is very much alike what you have just done, but the commands may be a dit different.
Some of the early computer cartoons dealt with programmers who were really thick glases becuase of all the numbers they had to look at. Things have changed. Enought of assembly, so you do not have to get the thick programmer glasses.

————————————————————–

Testing some antennas

Also wanted to test the composite output of an old computer I have.

tv4pic

Next antenna, I think is a Gray-Hoverman antenna. I tried to follow the specs the best I could.

tv2pic

The last antenna I tested was a fractal based antenna. it was definitely directional.

P000-256-274-537-f1016

————————————————————-

Went in the closet and found two really old Gateway laptops. One was from back in 2002. The Solo 3350 was sort of a notebook before there were notebooks. It has a detachable drive that you could either insert a floppy or a dvd-rom drive.  Shame it only had a max of 256 megs f memory per gateway specifications.    It had a foobarred Ubuntu install. I just went ahead and installed Debian Squeeze on it.. I can use it to access network devices, Anyway there was on quirk in that the boot record did not install correctly. No problem. rebooted witt e install cd and went into the rescue mode. chrooted to the hard drive root, then ran the command:

# /usr/sbin/grub-install

Rebooted and all was well! Reinstalled Debian squeeze on the other system and then upgraded to wheezy.  Let both machine recharged the batteries. Surprised me to no end that the batteries still worked at least for the short time I tested them.

—————————————————————

Generating electricity with hot and cold water.

hotcold

————————————————————–

Piadizza(cross between a roman taco called a piadina ) and a pizza.

P000-260-317-645-df026

Good day.

Linux gaming plus a bit more.

Leave a comment

There is a boatload of games for linux..Wonder how many will play on the Raspberry Pi.
minecraft-cover.jpg
shot1.png
Screenshot2.png
sabayon-small.png
zorin-small.png
Screenshot - 05052012 - 07:55:08 AM.png
For gaming:Mineos – (Minecraft) http://en.sourceforge.jp/projects/sfnet_mineosplus/
Live gamers – http://live.linux-gamers.net/
Gamedrift - http://gamedrift.org/ ($$$)
Sabayon Linux (gaming edition) – http://www.sabayon.org/
Zorin OS Gaming edition.  http://www.zorin-os.com/
Super gamer: http://supergamer.org/———-
Game serving: http://www.dragonbe.be/
———-

Other Free Games

Table of Contents

  1. Game News
  2. Game Development Portals
  3. 3D Engines & Game Development Kits (from the Multimedia section)
  4. First-Person Shooter Games
  5. 3D Action/Strategy Games (excluding FPS and Simulation games)
  6. 2D Action/Strategy Games
  7. Simulation Games (excluding Sports)
  8. Educational Games
  9. Board Games (excluding Go & Chess)
  10. Go Games
  11. Chess Games
  12. Card Games
  13. Game Managers
  14. Console Hardware Drivers
  15. Console Emulators
  16. Console Hacks
  17. Inactive Projects

Game News

Game Development Portals

First-Person Shooter Games

  1. Cube (Multi-player/single-player FPS game which uses a very small & fast 3D game engine. License: BSD-style) (forum) (Cube-OSX Mac OS X port)
  2. Fight Win Prevail (SDL based, multi-player FPS game. License: BSD-style) (forums)
  3. QuakeSource (Quake v1 & v2 engine based FPS game projects) (forums)
  4. QuakeForge (Multi-player FPS game based on the Quake v2 engine.) (cvs) (ml)
  5. Blood (Multi-player FPS game based on the Quake v2 engine.) (cvs) (ml) (forum)
  6. Open Quartz (Project to create free Quake game data) (cvs) (ml)
  7. Aleph One (SDL based FPS game) (cvs) (ml)
  8. FreeDoom (FPS game based on the “Doom” game) (forum) (deb)
  9. Doomsday Engine (FPS game based on the “Doom” game) (cvs) (ml) (forum)
  10. Doom Legacy (FPS game based on the “Doom” game) (ml) (forum) (forum) (deb)
  11. ZDoom (FPS game based on the “Doom” game. Currently w32 only.) (forum)
  12. Hexen II (FPS game based on the original – Doom based – game by Raven Software.) (cvs)
  13. Industri (Single-player FPS game) (cvs)

3D Action/Strategy Games (excluding FPS and Simulation games)

  1. UFO Alien Invasion (Multi-player/single-player, turn-based style, strategy game. UFO is based on a modified Quake2 engine.) (forums)
  2. BZFlag (Multi-player, tank battle action game) (cvs) (ml) (deb)
  3. netPanzer (Multi-player, tank battle action game) (cvs) (ml) (deb)
  4. Scorched 3D (Multi-player, tank battle strategy game, inspired by the DOS game “Scorched Earth”) (forums) (deb)
  5. /Trackballs/ (SDL based ball steering game, inspired by the Amiga classic “Marble Madness”.) (cvs) (ml) (deb)
  6. Neverbal (SDL based ball steering game. Steering is done by tilting the floor. The package also includes the Neverputt game, a multi-player miniature golf game.) (deb)
  7. TORCS (Racing car simulator game. You can program a racing car bot or drive it interactively.) (cvs) (ml) (TORCS Racing Board online racing championship organisation tool)
  8. Trigger (SDL based racing car game)
  9. Widelands (SDL based multi-player, ‘real-time’, settlement strategy game, inspired by the Settlers game.) (cvs) (ml)
  10. Boson (KDE based multi-player, ‘real-time’, war strategy game) (cvs) (ml) (deb)
  11. WorldForge (Multi-player, role-playing game framework and game projects) (ml)
  12. FreeDroid (Collection of 3 single/multi-player, role-playing games) (cvs) (ml) (deb)
  13. Emilia Pinball (SDL based pinball game) (cvs) (ml) (deb)
  14. Pizza Game (C++/OpenGL/Ogre based Pizza restaurant management game) (cvs) (forum)
  15. Tux Kart (Linux mascotte Go-Kart racing) (cvs) (ml) (deb)
  16. Slune (Linux mascotte racing game) (cvs) (ml)
  17. PPRacer (“PlanetPenguin Racer”. Linux mascotte racing game.) (forum)
  18. Mtp Target (Multi-player, ball rolling action game) (forum)
  19. Parsec47 (SDL based shoot-em-up game)
  20. Ultimate Stunts (SDL based car stunt racing game) (cvs) (forum)
  21. I Have No Tomatoes (SDL based tomatoes smashing game) (ml)
  22. glTron (Futuristic combat motor racing) (cvs) (deb)
  23. Armagetron (Futuristic combat motor racing) (cvs) (ml) (deb)
  24. SkyStreets (SDL based space-ship racing inspired by the the M$ DOS game) (forums)
  25. Vega Strike (Spaceship combat strategy game) (cvs) (ml) (forum) (forums) (deb)
  26. Crack Attack! (SDL based Tetris variant inspired by the Super Nintend* classic “Tetris Attack”) (deb)
  27. Xbl (3D Tetris game) (deb)
  28. excido (SDL based, futuristic, spacership shooter)
  29. Arianne (Multi-player, role-playing game engine) (cvs) (ml)
  30. The Dink Project (Role-playing game and RPG game engine, based upon the original game by Robinson Technologies) (cvs) (ml)
  31. GemRB (Role-playing game and RPG game engine, based upon the original “Infinity Engine” developed by BioWare) (cvs) (ml) (forum)
  32. CannonSmash (Tabletennis game) (cvs)
  33. Peinture (Multi-player, color puzzle game with several game modes available)
  34. Soccar (Single/two-player footbal played with cars) (cvs)
  35. TuxPuck (Shufflepuck game)
  36. 3D Pong (One or two player ball game inspired by the legendary Pong game from Atari)
  37. PANP (SDL based Pac-Man game with multi-player support) (cvs) (ml)
  38. CarTerrain (Multi-player splitscreen, offroad racing game)
  39. MiniRacer (Quake engine based racing game)
  40. Die (Deathmatch car racing game)
  41. Rubik (Rubik cube game) (cvs)
  42. FooBillard (SDL/Op*nGL based billiard simulation)
  43. BillardGL (Billiard simulation) (cvs)
  44. KBillar (KDE based billiard simulation which is highly customizable)
  45. Ballsmacker (GNOME/Op*nGL based pool simulation) (cvs)
  46. StepMania (Musical-rhythm game framework) (cvs) (ml)
  47. Briquolo (SDL based Breakout game)

2D Action/Strategy Games

  1. Battle for Wesnoth (SDL based, multi-player, turn-based strategy game in a fantasy setting) (cvs) (ml) (forums) (deb)
  2. Globulation 2 (SDL based, multi-player/single-player, realtime strategy game) (cvs) (ml) (forum)
  3. Frozen Bubble (Single/multi-player, SDL based color puzzle game) (deb)
  4. Fish Fillets (SDL based, comical, puzzle game inspired by the original Fish Fillets) (cvs) (ml)
  5. DROD (“Deadly Rooms of Death”. Dungeon exploration puzzle game. License: MPL) (cvs) (ml) (forum)
  6. Enigma (SDL based, ball rolling puzzle game) (cvs) (ml) (deb)
  7. Pingus (SDL/Clanlib based game in which you help guide a bunch of penguins on their journey around the world. The game was inspired by the classic “Lemmings” game.) (ml) (deb)
  8. Stratagus (Military action and strategy game. Formerly called FreeCraft.) (cvs) (ml) (deb)
  9. LGames (Collection of puzzle/action games, including: ltris, lbreakout, lpairs and marbles) (ml)
  10. TecnoballZ (SDL based Breakout game)
  11. Scramble (SDL based anagram puzzle game) (forum)
  12. Nil (SDL based, multi-player, ground-digging action game inspired by the Worms/Liero game) (cvs)
  13. Wormux (SDL/Clanlib based, multi-player, ground-digging action game inspired by the Worms/Liero game)
  14. Worms of Prey (SDL based, multi-player, ground-digging action game inspired by the Worms/Liero game)
  15. Outgun (Allegro based, multi-player, capture-the-flag action game) (cvs)
  16. Njam (SDL based Pac-Man game with multi-player support) (cvs)
  17. Atomix (GNOME based puzzle game inspired by the Amiga original)
  18. BomberClone (SDL based, multi-player, bomb placing/avoiding puzzle game, inspired by the AtomicBomberman Bomberman game) (cvs) (ml) (deb)
  19. Balder2D (SDL based, multi-player, zero-gravity action game inspired by the book Ender’s Game) (cvs) (ml)
  20. ColorSnatch (Two-player territory-capturing puzzle game)
  21. Abuse (Platform shooter)
  22. Critical Mass (SDL based Space shoot-em-up) (cvs) (deb)
  23. Crossfire (Role-playing adventure reminiscent of Rogue) (ml)
  24. Lost Labyrinth (Role-playing adventure reminiscent of Rogue) (cvs) (forum)
  25. Trophy (Racing game) (cvs)
  26. Vectoroids (Rock-shooting game similar to the arcade classic “Asteroids”)
  27. nInvaders (Ncurses based Space Invaders clone) (cvs) (ml)
  28. CrossFire (Role-playing adventure) (cvs)
  29. XBlast (Xlib based, multi-player, bomb placing/avoiding puzzle game) (ml)
  30. NetHack (Dungeon exploration adventure classic) (cvs) (forum)
  31. Xconq (Build, manage and conqueror civilizations) (ml)
  32. Final Frontier Trader (SDL based, single player, space-ship strategy game) (cvs)
  33. Star Control 2 (SDL based spaceship adventure/strategy game. This project is a port of ‘The Ur-Quan Masters’ to SDL.) (cvs) (ml)
  34. Exult (Role-playing adventure) (cvs) (ml)
  35. ASC (Turn based military strategy game) (ml)
  36. Arianne (Massively multi-player role playing game and engine) (cvs) (ml)
  37. FreeCNC (SDL based, military action and strategy game) (cvs) (ml) (forum)
  38. XShipWars (Multi-player spaceship strategy game) (development site)
  39. Liquid War (Multi-player ‘eat your opponent’ strategy game)
  40. GTetrinet (GNOME based, multi-player, tetris-like game-client Tertinet) (cvs) (ml)
  41. Tetrinet (Ncurses based, multi-player, tetris-like game-client for Tertinet. License: none, it is public domain.)
  42. Quadra (Multi-player, tetris-like game) (cvs) (ml)
  43. XWelltris (Tetris-like game)
  44. Torrent (Tetris-like game) (forum)
  45. Krystal Drop (SDL based Tetris-like game inpired by NeoGeo’s ‘Magical Drop’ game) (cvs)
  46. LinXtris (GTK+/Ada95 based Tetris-like game) (cvs)
  47. Tunnel (SDL based tunnel-flying game) (ml)
  48. Powermanga (Xlib based shoot-em-up game)
  49. Icebreaker (Ice-breaking strategy game)
  50. Alien Blaster (SDL based shoot-em-up game)
  51. Crimson Fields (Realtime tactical war game) (cvs) (ml)
  52. Civil (Multi-player American civil war strategy game) (cvs) (ml)
  53. Space Hulk (Qt based, two-player, turn-based strategy game) (cvs)
  54. Sulk (SDL based, two-player, turn-based strategy game) (cvs) (ml)
  55. Attal (Qt based, turn-based strategy game in a medieval setting) (cvs) (ml)
  56. GNOME War Pad (GNOME based client for the play-by-email space conquest strategy game ‘VGA Planets’) (cvs)
  57. GalaxyHack (Multi-player, script-writing based, space conquest strategy game) (cvs) (forum)
  58. Xscorch (Two-player, tank battle strategy game, inspired by the DOS game “Scorched Earth”) (ml) (deb)
  59. Conquest (Ncurses based, multi-player, space warfare game)
  60. ADIC (‘Any Door Is Closed’. Cooperative multi-player strategy game. The goal is to lock-in all players of the other teams.) (cvs) (ml)
  61. Pathological (Pygame/SDL based puzzle game inspired by the “Logical” game from Rainbow Arts) (cvs)
  62. XLogical (SDL based puzzle game inspired by the “Logical” game from Rainbow Arts)
  63. MOAGG (“Mother Of All Gravity Games”. SDL based gravity-flying game inspired by the classics “Space Taxi” and “Gravity Force”. MOAGG includes a Qt based level editor.) (cvs) (ml)
  64. Wakkabox (SDL based puzzle game, where you need to slide the red-box to the other side)
  65. 2Pong (SDL based, multi-player, ball game inspired by the legendary Pong game from Atari)
  66. Rocks’n’Diamonds (SDL based clone of the classic “Boulderdash” rock-moving strategy game) (cvs)
  67. Epiphany (Clanlib based clone of the classic “Boulderdash” rock-moving strategy game) (cvs)
  68. Gweled (SDL based color puzzle game inspired by the “Bejeweled” or “Diamond Mine” game)
  69. Monster Masher (GNOME based rock-moving strategy game) (lxr)
  70. Cadaver (Client/server based AI realtime strategy game. Players need to ‘program’ an AI-client.)
  71. Galaxy (Email message based multi-player galactical strategy game) (cvs) (ml) (GalNG Tcl based procmail script to automaticially move turn reports and forecasts into a perspective directory) (cvs)
  72. Kpacman (KDE based clone of the classic “Pacman” game) (cvs)
  73. gav (“GPL Arcade Volleyball”. SDL based clone of an old game.) (cvs)
  74. Luola (SDL based cave flying spaceship shoot-em-up)
  75. kbilliards (KDE based billiard simulation)
  76. Formido (SDL based soldier shoot-em-up game)
  77. Castle-Combat (Multi-player, SDL based, castle-wall-attack game, inspired by the “Rampart” game)
  78. Kajaani Kombat (Multi-player, SDL based, space-shooting game, inspired by the “Rampart” game)
  79. XBubble (Single/multi-player, Xlib based color puzzle game) (cvs) (ml)
  80. Toppler (SDL based platform game, inspired by the “Tower Toppler” game) (cvs) (ml)
  81. The Bub’s Brothers (SDL based multi/single-player, platform game, inspired by the “Bubble Bobble” game) (cvs)
  82. Enigma (SDL based platform shooter, inspired by Duke Nukem 1)
  83. BurgerSpace (SDL based platform game, inspired by the “BurgerSpace” game)
  84. Afternoon Stalker (SDL based maze game, inspired by the “Night Stalker” game)
  85. Cosmosmash (SDL based space-tennis game, inspired by the “Astrosmash” game)
  86. SDL-Toms (Multi-player, SDL based puzzle game, inspired by the “Atoms” game)
  87. asciijump (ASCII-art based ski jumping game)
  88. GPC-Slots 2 (ASCII-art based slot machine game) (forum)
  89. Pycadia (Collection of Python/PyGame based vector-rendered games, including a clone of the classic “Space War” and “Asteroids” game)
  90. Scalar (Picture assemble puzzle game)
  91. gmult (GTK+ based multiplication puzzle game inspired by the Emacs based original)

Simulation Games (excluding Sports)

  1. FlightGear (Flight Simulator) (cvs) (ml) (forum) (FGSD FLTK based scenary design tool) (cvs) (ml) (Atlas Map design tool. Inactive project.) (cvs) (ml)
  2. GL-117 (SDL based Flight Simulator)
  3. FreeCiv (Multi-player, civilization simulation) (forum) (ml)
  4. LinCity (SVGALib based urban planning simulation.) (cvs) (ml) (old homepage)
  5. OpenCity (SDL based 3D urban planning simulation.) (cvs) (ml) (forum)
  6. OpenTTD (SDL based, multi-player railway simulation, inspired by the “Transport Tycoon” game.) (svn) (ml) (forums)
  7. Danger from the deep (SDL based, 3D, World War II German submarine simulation.) (cvs) (ml)
  8. SearchAndRescue (3D simulation of a rescue helicopter)
  9. JuggleMaster (Juggling siteswap animation creator)
  10. Jongl (Juggling animation creator)
  11. Celestia (Navigate trough our universe in 3D)
  12. Cubex (Web based Rubik’s Cube solver)

Educational Games

  1. Educational Software Portals (from the Educational Software section)
  2. Language (from the Educational Software section)
  3. Creativity (from the Educational Software section)
  4. Logic & Math (from the Educational Software section)
  5. Physical Training (from the Educational Software section)
  6. Computer Skills (from the Educational Software section)
  7. Childsplay (SDL/Python based collection of educational games for children) (cvs) (ml)

Board Games (excluding Go & Chess)

  1. Gtkboard (GTK+ based generic framework for creating board games) (cvs) (ml)
  2. GRhino (GNOME based reversi-alike game)
  3. Hexxagon (GTK+ based reversi-alike game insipred by Hexagonal Ataxx) (Ncurses based version)
  4. GNU Backgammon (GTK based backgammon)
  5. BacKgammon (KDE based backgammon) (cvs)
  6. Mah-Jong (GTK+ based Mah-Jong game)
  7. xmahjongg (Xlib based Mah-Jong game)
  8. Pente (Xlib/Ncurses/text based, multi-player, five-in-a-row’ game)
  9. Gamazons (GNOME based Amazon board game)
  10. TEG (“Tenes Empanadas Graciela”. GNOME based Risk-alike game with GGZ networking support) (cvs) (ml)
  11. WorDog (“World Domination Game”. PHP/Web based, multi-player, Risk-alike game.) (cvs) (ml) (forums)
  12. Gnocatan (GNOME based board game inspired by the “The Settlers of Catan” game) (cvs) (ml)
  13. London Law (Python/WxPython based, multi-player, game inspired by the Scotland Yard board game)
  14. gTans (GTK+ based Tangram puzzle game)
  15. Quadromania (SDL based ‘rotate-block’ puzzle game)
  16. GnomerMind (GNOME based mastermind)
  17. Mindless (SDL based mastermind)
  18. Gnect (GNOME based 4-in-a-row)
  19. monopd (Game server daemon for playing monop*ly board games) (cvs)
  20. Atlantic (KDE based monop*ly client for the monopd game server network) (ml)
  21. GtkAtlantic (GTK+ based monop*ly client for the monopd game server network)

Go Games

  1. Free Go software list (Links to all kinds of Go software)
  2. GNU Go (Text based, IGS/NNGS compatible, Go game client and server) (cvs) (ml)
  3. GtkGo (GTK+ based Go game)
  4. ccGo (GTK+ based Go client)
  5. glGo (SDL/OpenGL/wxWindows based, IGS compatible, Go client. glGo also includes an SGF editor.)
  6. qGo (Qt based, IGS compatible, Go client. qGo also includes an SGF editor.) (cvs) (ml)
  7. 3D Battle Go (OpenGL based Go game with network support)
  8. Go Siege (GTK+ based Go game variant, in which hundreds of players can compete simultaneously online)
  9. Hikarunix (DamnSmallLinux based live CD distribution dedicated to Go gaming)

Chess Games

  1. XBoard (Chess framework, with support for many different engines and GUI-frontends, several Internet chess servers, and the PGN game archive format) (ml) (wp)
  2. Scid (Chess information database tool, with support for the standard PGN and EPB game archive formats) (cvs) (ml)
  3. GNU Chess (XBoard compatible chess engine) (cboard Ncurses frontend) (cvs)
  4. Phalanx (XBoard compatible chess engine)
  5. Slibo (KDE/Op*nGL based chess interface, compatible with the XBoard interface) (cvs)
  6. eboard (GTK+ based chess interface, compatible with the XBoard interface) (cvs) (ml)
  7. Knights (KDE based chess interface)
  8. Sjeng (XBoard compatible chess variants playing engine) (cvs)
  9. BabyChess (GTK+ based GUI for viewing and editing chess games in PGN and FEN format) (ml)
  10. pythonchess (Python/Tk based chess program, aimed at practicing computer chess programming.)
  11. w3Chess (Web or email based chess program)
  12. chessdgm (Tool to convert a FEN chess position into a word processor diagram)

Card Games

  1. PySol (Collection of 200+ solitaire card games)
  2. Flowersol (Collection of solitaire card/puzzle games. Code fork of PySol.)
  3. KPoker (KDE based poker game)
  4. Hearts (KDE based clone of the M$ game)
  5. Floater (Tcl/Ncurses based bridge game client) (cvs)
  6. FreeDoko (4-player card game) (forum)

Game Managers

  • XQF (GTK+ based frontend for Internet game server browsing and connecting) (cvs) (ml)
  • KRconLinux (GTK+ based frontend for Internet game server browsing and connecting)
  • MAME Game Managers (QMamecat Qt based MAME catalog launcher) (KMameleon KDE based front-end for XMame) (ml) (CXMAME Ncursed based frontend for XMame)
  • Game Launcher (Portable and generic front-end for emulators like: MAME, Nesticle, RockNES, zSNES, snes9x, Callus, Stella, z26, and Genecyst.) (cvs) (ml)

Console Hardware Drivers

Console Emulators

  • Hardware / OS Emulation (from the OS section)
  • MAME (“Multiple Arcade Machine Emulator”) (forum) (XMame X11/Un*x port of MAME) (AdvanceMAME XMame port suitable for TV screens and arcade monitors) (KnoppiXMAME bootable CD-ROM ISO image for a MAME environment based on Knoppix) (MacMame)
  • Mess (“Multi Emulator Super System”. Arcade machine emulation software, similar to MAME.) (cvs) (forum)
  • ScummVM (LucasArts-like game emulator) (cvs) (ml)
  • DevKit-Advance (GCC based game development kit for the Gameb*y Advance and emulators thereof.) (cvs) (ml)
  • ZSNES (Nintend* SNES/Super Famicom emulator for x86 computers) (cvs) (ml) (wp)
  • mupen64 (SDL based, Nintend* N64 emulator, build upon the inactive Daedalus-Lkb project.)
  • Daphne (Arcade laserdisc emulator)
  • GNGB (Nintend* Gameboy emulator)
  • gbsplay (Nintend* Gameboy sound hardware emulator)
  • PPM (GTK+ based Nintend* Gameboy tile & map editor)
  • Atari800 (Portable Atari 8-bit computer – 400, 800, and XL and XE series – and Atari 5200 system emulator) (cvs) (ml)
  • Stella (Portable Atari 2600 VCS computer system emulator) (cvs) (ml) (KStella KDE frontend)
  • openMSX (MSX operating system emulator) (cvs) (ml)

Console Hacks

Inactive Projects

  • Heroes (Futuristic combat motor racing) (cvs) (ml)
  • Gambit (C++ library for simulating/analysing game theory. Gambit includes a wxWidgets based user tool.) (cvs) (ml)
  • PRBoom (FPS game based on the “Doom” game) (ml) (forum) (deb)
  • Heretic (FPS game based on the “Heretic” game)
  • Slickworm (SDL based first-person-shooter with vehicle physics and terrain engine) (cvs) (forum)
  • Space Racer (Car racing in space) (cvs)
  • Decopter (SDL based 3D simulation of a helicopter)
  • Reaper (Futuristic flight combat game) (cvs) (ml)
  • Construo (Xlib or OpenGL/Glut based program for constructing 2D wire-frame objects and letting them react on physical forces, like gravity, and watch them break or even explode) (cvs) (ml)
  • Palito (Realtime strategy game inspired by ‘Total Annihilati*n’) (source)
  • Egoboo (Dungeon exploration adventure, in the spirit of NetHack) (cvs) (ml)
  • TSSHP (“The System Shock Hack Project”. SDL based role-playing/shooter game. License: BSD-style) (cvs) (ml)
  • Batalla Naval (GNOME based, multi-player, battleship strategy game) (cvs)
  • Forgotten Destruction (Realtime adventure/strategy game) (cvs)
  • Phavon (SDL based spaceship shoot-em-up which is modelled after ‘Xenon 2′) (cvs)
  • DroidBattles (A game of programming. The task is to design your bots and then use the hardware as efficiently as possible by writing a program for it, with the mission to kill any enemy bots on the playground.)
  • RealTimeBattle (Program controlled robot battle) (ml)
  • FreeRails (Multi-player railway simulation) (cvs) (ml)
  • FreePop (SDL based clone of the classic “Populous” civilization building strategy game) (cvs)
  • Free Reign (Xlib/Op*nGL based, expandable, city simulator) (cvs)
  • Senken (GNOME based urban planning simulation) (ml)
  • CGoban1 (“Complete Goban Mark 1″. X based, IGS/NNGS compatible, Go client.) (cvs) (ml)
  • CardWords (Customizable crossword game)

——————————————————————–

Last time I showed you how to use old distro repositories with Ubuntu. Now here is an example of a Debian sources.list for an older version of Debian repositories: In this case for etch.

deb http://archive.debian.org/debian/ etch main non-free contrib
deb-src http://archive.debian.org/debian/ etch main non-free contrib

deb http://archive.debian.org/debian-security/ etch/updates main non-free contrib
deb-src http://archive.debian.org/debian-security/ etch/updates main non-free contrib

—————————————————————
In the last article, I talked about looking at programs and disassembling them. What is that really all about. Let us take the very simple program hw and run it.$ ./hw
Hello world!
$The program hw printed out the famous Hello world. We can understand that, but let’s look at what the computer sees to do that program.$ cat hw
� �̀Hello world! ( ���� �����
.shstrtab.text.data
� eddie@oedt01:~$ ��” ���Obviously garbage. At this point we can not really use that output for our needs. Remember I talked about a disassembler?  It changed that gobbletygoop in to something that a programmer might use.  Let’s try it.$ objdump -D hwhw:     file format elf32-i386Disassembly of section .text:08048080 <.text>:
8048080:    b8 04 00 00 00           mov    $0×4,%eax
8048085:    bb 01 00 00 00           mov    $0×1,%ebx
804808a:    b9 a4 90 04 08           mov    $0x80490a4,%ecx
804808f:    ba 0d 00 00 00           mov    $0xd,%edx
8048094:    cd 80                    int    $0×80
8048096:    b8 01 00 00 00           mov    $0×1,%eax
804809b:    bb 00 00 00 00           mov    $0×0,%ebx
80480a0:    cd 80                    int    $0x80Disassembly of section .data:

080490a4 <.data>:
80490a4:    48                       dec    %eax
80490a5:    65                       gs
80490a6:    6c                       insb   (%dx),%es:(%edi)
80490a7:    6c                       insb   (%dx),%es:(%edi)
80490a8:    6f                       outsl  %ds:(%esi),(%dx)
80490a9:    20 77 6f                 and    %dh,0x6f(%edi)
80490ac:    72 6c                    jb     0x804911a
80490ae:    64 21 0a                 and    %ecx,%fs:(%edx)

It still seems kind of cryptic, but you can see some what might be computer instructions there. So the text is the program and the data is what we want to print out. Wait a minute do you say as you do not see hello world. No problem. Hello world! is translated into ascii in hexadecimal format. Talked about that before where the computer encodes the characters. How can we prove those are the right characters? We can use a bit of code to manually translate the characters into hexadecimal. With the data, you can ignore the commands on the right hand side for now.

$ echo -n “Hello world\!” | od -A n -t x1 |sed ‘s/ /\\x/g’
\x48\x65\x6c\x6c\x6f\x20\x77\x6f\x72\x6c\x64\x5c\x21

Notice the hexadecimal numbers are the same from the print out left hand side to the conversion we made. So the data is there. Maybe one of these days, I will go into more detail, but that is all for now.

Update: Windows RT limitations overcome with the knowledge of assembly language. Apparently Microsoft is a company that only wants you to use equipment they way they want you to, not the way you want to.
More details:
http://hackaday.com/2013/01/09/unsigned-code-running-on-windows-rt/. \
https://surfsec.wordpress.com/2013/01/06/circumventing-windows-rts-code-integrity-mechanism/.

——————————————————
Message of the day (motd) dor someone’s Raspberry pi: (use at your own risk)

let upSeconds=”$(/usr/bin/cut -d. -f1 /proc/uptime)”
let secs=$((${upSeconds}%60))
let mins=$((${upSeconds}/60%60))
let hours=$((${upSeconds}/3600%24))
let days=$((${upSeconds}/86400))
UPTIME=`printf “%d days, %02dh%02dm%02ds” “$days” “$hours” “$mins” “$secs”`

# get the load averages
read one five fifteen rest < /proc/loadavg

echo “$(tput setaf 2)
.~~. .~~. `date +”%A, %e %B %Y, %r”`
‘. \ ‘ ‘ / .’ `uname -srmo`$(tput setaf 1)
.~ .~~~..~.
: .~.’~’.~. : Uptime………….: ${UPTIME}
~ ( ) ( ) ~ Memory………….: `cat /proc/meminfo | grep MemFree | awk {‘print $2′}`kB (Free) / `cat /proc/meminfo | grep MemTotal | awk {‘print $2′}`kB (Total)
( : ‘~’.~.’~’ : ) Load Averages……: ${one}, ${five}, ${fifteen} (1, 5, 15 min)
~ .~ ( ) ~. ~ Running Processes..: `ps ax | wc -l | tr -d ” “`
( : ‘~’ : ) IP Addresses…….: `/sbin/ifconfig eth0 | /bin/grep “inet addr” | /usr/bin/cut -d “:” -f 2 | /usr/bin/cut -d ” ” -f 1` and `wget -q -O – http://icanhazip.com/ | tail`
‘~ .~~~. ~’ Weather…………: `curl -s “http://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|UK|UK001|NAILSEA|” | sed -n ‘/Currently:/ s/.*: \(.*\): \([0-9]*\)\([CF]\).*/\2°\3, \1/p’`
‘~’
$(tput sgr0)”

—————————————————-

So good  tuna, lentils,  and rice..
P000-256-327-667-c9021
Good day.

Older Entries

Follow

Get every new post delivered to your Inbox.