WARNING: the software downloaded
from here is provided "as is", this means that I will not take any
responsibility for direct or indirect malfunctions or damages that the
correct or incorrect use of the software may cause on any computer.
Translated: nobody force you to download these programs, who wants to
download them automatically takes the responsibility of his actions and
all the consequences are only his business.
This page contains some programs written by myself both because I
needed them and for a personal joy. They are all written in C. The
compiler I used is DJGPP, I
recommend it because for me it's the best compiler you can find and
moreover it has a very complete on-line guide of all the functions and
included libraries. The recommended operative systems for these
programs are Dos or Windows 98, probably they run also under the more
modern Windows but some of the programs (specially the graphic ones)
may have serious problems with these OS (nothing unrecoverable, simply
they don't start!), so my advice for these programs is to download the
BOOT file which can be unzipped directly in a floppy disk to create a
boot disk which can be used to restart the
pc with the right OS to
avoid any problem.
Here below all the information for the download. First of all, you need
a
DPMI to run any program, with Windows you don't need it because it's
already loaded, but in DOS (or using the boot disk) it's necessary to
load it. In the download of the BOOT file for simplicity I have already
included the one given with Djgpp, that is cwsdpmi.exe,
so (for those
which haven't the need to change it and for those which don't
understand anything of the last 3 lines) there's nothing to do except
left it here in the same
directory where the program is and it will be loaded
automatically (alternatively you can launch it before launching the
program... but why do you want to take the hardest way?!).
Some of the programs need the mouse, obviously I have included in the
BOOT file a mouse driver (Logitech), you can use it or you can use any
other mouse driver you want.
For any information or communication: mangnam@libero,
you have to add ".it" at the end, I don't check it too often but if
there is new mail I'll surely read it!
Last thing: I hate HTML programming, so this page is probably the most
simple you can find on the Web, practically it's only text, but it's
extremely functional.
The ZIP file for the boot disk is
here:
These are programs which solve some problems or which can be useful in
some situations, it's better to read the description for anyone than to
explain their general purpose...
Description: It compares 2
files of the SAME SIZE. file1.any is the ORIGINAL file, file2.any
is the COPIED file, the error is found when there is a difference in
the file2.any in comparison with file1.any. I wrote this program
principally because I didn't want to throw away any more burned cd only
because one file (and some burn programs don't even tell you which
one!)
was not copied correctly, sometime the error is only one byte long!
CONFR compares two files and search for some differences, if it founds
some of them it builds a correction code (to convert file2.any into
file1.any) that is printed on the screen at the end or (giving at the
command line the name of a third file) saved in codefile.ccc. The
extension CCC isn't necessary at all, but it's recommended because it
identifies the file! It's an ack for Copy Correction Code. Once you
have the correction code, you can use COPYCOR to copy the file
eliminating the errors at the same time.
Examples: Let's say we have a
ZIP file 600 MB long called backup.zip
with some backup things inside. We copy it and the burn program tells
us that the file was not copied correctly. We launch confr
c:\backup.zip d:\backup.zip, without the name of the CCC file.
Let's say that the program founds one error: it builds the correction
code and it prints it at the end. We copy the code on the cd label and
when we are going to use the file simply we use COPYCOR to have the
original file back on the hard-disk without errors.
Description: It copies a file
eliminating the errors. If you don't give the name of the third file,
it asks to manually insert the code.
Example: Using the same example
above, we know that we have a corrupted file on the cd but we have the
correction code. We launch d:\backup.zip
c:\backup.zip and we insert the code written on the cd label, at
the end we have backup.zip
on the hard-disk like it was originally before copying it (with
errors!) on the cd.
Download:
COPYSAFE Type: command line
Statements: copysafe
file1.any file2.any
Description: It copies a file.
I noticed that Win98 copy doesn't work well, probably there's some
problem with the old Dos files (or maybe my hard-disk is thinking about
suicide!), so I use this program for big and important files, it's a
little bit slowly but it's safe!
Description: It works in 2
ways. In the first case, you launch it with only one filename and it
builds a file called sight.txt
which is the copy of the original file without the unreadable
characters that make the text editors become crazy. If you try to open
some files (perhaps very big!), it's easy that the text editors print
only some characters on the first line and nothing more. This happens
because the byte of a NON text file are values that a text editor
considers characters and some of these characters are "special" and
they are needed to format the text. Erasing them, it's possible to
obtain a file that at least contains all of "readable" is contained in
a file. I say "readable" because surely you'll have tons of "random"
characters, but you can find also the "real" character strings, for
examples the messages printed on screen or some links to external
files. In the second case, the programs asks which string must
searched in the file and the new string you want to insert in the place
of the old one, file2.any is the copy of the first file with the string
changed. WARNING: the length of the new string must be LESS OR EQUAL
than the length of the old string, this because SIGHT doesn't do
reverse engineering operations, it simply works on the compiled file
which has inside it some places reserved to the strings that the
programmers put directly in the source code, it's clear that this place
cannot be expanded without recompiling the file!
Examples: Let's make real one
of my childhood dreams: let's launch sight
command.com command2.com (I strongly advice you to make backup
copies
before using SIGHT!!). When it asks the string, insert Comando o nome
file non valido ( I'm sorry but I have the italian version of
Dos! I think that in the english version it sounds like: Unknown command or
filename, isn't it?). As new string insert Don't be stupid!
Do some renames to have a backup copy of the real command.com
and our new file at its place and... eheh...
Download:
RINALDO Type: program
Statements: rinaldo
Description: With this program
you can make the ringtones for the Fisio825 an for all the cellular
phones which use *.imy files. Once launched, you can use the keyboard
to play the music you want, the keys are from Z to M (corresponding to
the white key of the piano) and SDGHJ (the black keys of the piano).
The more time you press the key, the more the correponding note will
last in the song. Press the SPACE key to insert a pause. Beware
that you have to do some practice before you can record the music you
want, especially for the duration of the recorded notes which is a bit
shorter than the duration of your pressure on the key. By clicking on
"Modalità REGISTRAZIONE" or "Modalità PROVA" you
can alternate this two modalities, the first one records every key you
pressed, the second one lets you try the music (the active modality is
the one displayed). Click "Nome del file" to insert the name
of the file, DO NOT write the imy
extension because it is appended automatically when you save the file.
"Nome della melodia" is the name of the melody. Click BEAT to insert
the number of beats per minute and if you click the keys on
the keyboard from 1 to 7 you can change the octave. ASCOLTA plays the
recorded music. BACKSPACE erase the last note. SALVA saves the file and
if you press ESC you will exit the program. The created file can be
sent
directly to your phone with a wire or a Bluetooth connection.
Download:
INCASTRO Type: program
Statements: incastro
incastro filename.any
Description: With this program
you can create those type of puzzles called "interlaced words", those
ones with the words written horizontally, vertically and diagonally in
every directions in which you have to find and delete every word
written in a list and discover the left letters which form another word
or a phrase if they are read in order. To make the program run, a
"dictionary" file is needed, which is a text file with a list of words
separated by the ENTER key and whose the first line is an EMPTY line or
it contains a word of less than 4 letters (in the example file the
first line contains the "a" letter). The good functionality of the
program is totally linked to the dictionary file, with a hundred of
words it is possible to create a 10x10 square puzzle in a reasonable
time, with bigger squares it is better to use a bigger dictionary file,
in any case the general rule is that more words you have and better is
the final solution. The program can be launched without arguments, and
in that case it will search a file called dizio.txt,
otherwise you can put as argument the name of any file you want to use
as the dictionary. Once launched, the program will ask the length of
the square (at the moment this value is limited at 20, it already takes
a long time with squares with a length of 13-14, I don't think that
someone has the time to wait for the creation of squares so big...) and
the length of the solution: no word will pass through the boxes in
which you will put the letters of the solution, so once a square with n empty boxes is created, it is
clear that you can insert every possible solution with a length of n. At this point you have to
wait... During the waiting, you can do two things: press ESC, to quit
the program; press ENTER, to restart the search, i.e. delete the actual
square and replace the boxes of the solution. This is useful when you
notice that the program is taking too much time looking for a
solution. It's obvious that no one can tell how much is "too" much
time, probably it is one step far from the solution or probably it is
in an infinite loop, but sometimes it is useful to make it restart
because that particular configuration of solution-boxes is unlucky. It
happens to me that I saw it run for tens of seconds and after I just
pressed the ENTER key it found a solution in a bit. It doesn't always
go this way, but you never know... The solution is written in the output.txt
file.
Download:
SUDOKU BUILDER Type: program
Statements: sdkbld
sdkbld e
Description: As the name says,
the program builds sudokus, which are 9x9 squares with every row,
column and every one of the 9 little 3x3 squares filled with all and
only the number from 1 to 9. After it build a square with such
features, it takes away more numbers it can to build the real game, in
which you have to refill the empty boxes to find out the initial
complete square. The build games are real sudokus, this means
that they have ONLY ONE POSSIBLE SOLUTION. The program creates two
files in the DATA directory (which must exist!), a file named
gameXXXX.sdk and the other named soluXXXX.sdk, which contain
respectively the game and the solution. They are text files, so you can
open them with any text editor you want, but their use is best with the
Sudoku program (the ideal thing is to link the
extension .sdk with the
Sudoku program).
Download:
Curious programs
These are programs without a real purpose, they are experiments or
simply a satisfaction that I gave to myself!
CLOCK Type: graphic program
Statements: clock
Description: A simple
fullscreen analogic clock. This is the base version with simple lines,
the pc speaker makes the tic-tac.
Download:
CLOCK2 Type: graphic program
Statements: clock2
Description: A little improved
version. By pressing s on the
keyboard you can activate/deactivate the sound.
Download:
PUNTI Type: graphic program
Statements: punti
Description: The first
experiment on social behaviour. Every point do the same things as the
others and comes out a non-predeterminated behaviour of the entire
system. In this case, there are points of 4 different colors. Every
point looks around it and realizes who is the most near: if it's a
point of the same color it approaches, else it goes more far. Moreover
it looks around and discovers if there are much points of its color and
if this "company" lasts for a certain time, the point decides to go far
from his friends (he wants new emotions!). Going far the "company"
value will go lower and so there will be a moment when the point will
"feel alone" and will decide to go back. At this pont it's already
possible to notice that the groups of the same color are not closed and
compact, but more "expanded" and with an exploration skill. Every
precise lap of time, a piece of food appears on the screen. If a point
goes above a piece of food it will remember the location of the food.
If it goes near antoher point of the same color, it tells the other
point the location of the food (except in the case that the second
point knows already where it can find some food). Its principal
objective now is to reach the food to satisfy his "hungry" (which is
also temporized). You can notice how the point who discovered the food
tries immediately to goes bak to his group and after it tells around
the location you can notice some "little groups" of points (if not the
entire group!) moving towards the food. The fact that some groups of
points left the principal group and go towards the food but come back
soon depends on the company value: if the location of the food is known
by too few points, the little group is not so "autonomous" to left the
big group, in other words they are too few to satisfy by themselves the
company value.
Download:
FORMICHE Type: graphic program
Statements: formiche
Description: Every ant can be
in two conditions: it is carrying some food or not. Every ant does
simply
this thing: it looks around it and if there are some ants (at least
one) which are doing the thing opposite to what it's doing (which are
carrying some food when it is without food or viceversa) it calculates
the media of the directions and it goes in the opposite direction, else
it goes in a random direction. Only giving this instruction to every
ant it is possible to notice that the ants will build autonomously a
queue to collect the food!! It's important to underline that in the
program there is no concept of "queue", of "previous" or "next" or of
"follow someone", the queue comes out spontaneously. I thinked to apply
this idea: "if you are looking for the entrance of the exposition, go
in the opposite direction of the ones who are carrying a lot of bags!
If you are looking for the exit, go in the opposite
direction of the ones who have empty hands"!! Maybe it works!! The red
square (or violet, it changes to avoid the burn of the screen pixels!)
is the ant base, the green one is the food, the blue ants have empty
hands and the yellow ones are carrying the food. After the ants have
picked up a certain quantity of food it ends and another one take its
place in a random location.
Download:
TRAFFICO Type: graphic program
Statements: traffico traffico
s
Description: All starts from
here... (see "Traffic City" in games section below). In this simple
program, you have to build roads and parkings and after that it runs
like a screensaver with little cars driving all around. Left click to
build a road, right click to delete it. The number on the top-left
corner represents how many cars it is possible to place with the roads
build until now. It must become green (200) before you can switch to
the parking section. ENTER to switch to the parking section. By
pressing R on the keyboard while placing the parkings, the program
places automatically all the possible parkings. ENTER again (twice, the
first places the cars and the second starts them) to make the cars run.
By pressing N while the cars are running, it is possible to switch
between day and night (during the night the cars park more...). If you
launch traffico
s the program starts with the last map. ESC to exit.
Download:
RESOL Type: graphic utility
Statements: resol
Description: It restores the
original Dos resolution and (re)locks the direct memory access. Very
useful when a graphic program is interrupted unexpectedly in the middle
of the execution... Or when some other program (not necessary mine!)
ends in an unusual way and does not restore the original resolution, do
you know those beautiful resolutions with characters 2 cm long?
Download:
Games
Yeah, games!
TRAFFIC CITY (LE MACCHININE) Type: simulation game
Description: My pride! It's a
real game, very similar to SimCity but the concept is much different,
you have to build a city efficient referring to the road
traffic, the central unit of the game aren't the buildings but the cars
of the citizens which go around all the time, you have to build roads
and parkings and all the buildings which are needed to satisfy alla the
cars' needs. For young
programmers who lose the hope at the first difficult, I
want to tell you that Traffic City doesn't use any ready-to-use graphic
library
(which are besides very hard to learn), it's more simple and above all
more useful start from zero and do little steps, once you learn how
to paint a pixel nothing will stop you!
Features:
resolution: 320x200 - 256 colors
DOES NOT start with the most recent Windows, you have to use the boot
disk.
Manual and software are in italian.
Download:
TRAFFIC CITY SUPER (TRAFFIC CITY IN
SVGA) Type: simulation game
Players: 1
Statements: traffics traffics
d
Description: I'm making the
Svga conversion!! First of all I'll finish the test of Traffic City and
after that I'll start to convert it.
Features:
Resolution: Svga 640x480 - 256 colors
It works also with the most recent Windows, but it can run slow on slow
machines. In this case, it is best to use the boot disk and select the d option
(which means "Direct"referring to the memory access, or "Dos", or
"Do you have that sucking Windows XP? Select me!"...)
Description: Every time I go to
the gamesroom and I discover a new game I can't avoid thinking to how I
can implement it... This is the first! It's in SuperVGA and it is the
implementation of "Metro" game, in which you have to place some little
cards and the objective is to obtain the longest (for you) or shortest
(damaging the others) path linking two stations. I have no rights for
brand utilization, so I changed the name and the setting, which
is a normal railroad instead of the Paris metro. The concept of the
game
is exactly the same (You know what? That was my objective!). You have
to place the cards following the simple rules that are: 1 - you
cannot place a card which is not near another card or a
station; 2 - you cannot place a card with an U inversion in front of
any station, except if it's the only possible move.
If you can't (or you will not) use the card you have in your
hand, you can take another one form the queue, but only one, and if you
do that you have to use immediately the one you took. When you place
a card, you have to pick up another one if you haven't do it already
(you
must have exactly one card in your hands). As soon as one station
is linked with another station (which can belong to anyone, it has no
importance), the owner of the station from which the train
starts gains a number of points equal to the number of squares which
the train crosses to reach the arrival station (note that doesn't
matter WHO places the card but only WHO IS the OWNER of the station
from which the train leaves). If the train reaches one of the 4 central
stations (which belong to nobody and so from which no train leaves),
the owner of the train gains double points (many points as the squares
crossed by the train multiplied by 2, it seems to me that I hadn't be
clear...). Who gains more points wins!!! You can move on the board with
the arrow keys, to place a card press ENTER, to pick up another card
press SPACE, if you read with attention you know that you can pick up
an alternative card only once every turn, moreover you haven't to press
SPACE at the end of your turn to pick up the next card, that is
automatic. Your stations are the green ones.
Features:
Resolution: Svga 640x480 - 256 colors
It works also with the most recent Windows. It doesn't go slow because
it doesn't have fast screen refreshes, so you don't need the boot disk
(as Vincenzo says: "you never know"... and in this case you never know
which surprises Windows may think for you... the boot disk is always
there, in the case you need it...).
Description: Second game of the
gamesroom (I played it before Treno, bur the idea needed to decant in
my
mind...). This time the original name was "Quarto", but as usual I
changed it. This is a very ingenious game with a 4x4 board and 16
pieces which have to be placed one by one, every piece has 4 features
and every feature can have 2 different values, which are: high-low,
red-blue, rounded-squared, filled-concave. There aren't 2 equal pieces
(with 4 features of 2 values you have: 2^4=16 different combinations,
what a chance...). The objective of the game is to line up (horizontal,
vertical or on the 2 diagonals) 4 pieces with at least ONE COMMON
FEATURE. There is an interesting rule which makes the whole thing more
funny: THE PIECE YOU CAN PLACE IS GIVEN TO YOU BY YOUR OPPONENT.
Alternately every player chooses a piece for his opponent who places
it and chooses another piece for his opponent and so on. Thw winner is
the player who places the fourth piece which completes the line. This
rule creates some very interesting tactics, because there is no danger,
for example, in placing 3 pieces in a row with the same feature,
because your opponent can't choose the piece needed to complete the row
but you have to choose one for him! I don't tell you anything more,
because I want you to discover these tactics from yourself, all you
have to know is that this is a very addictive game.
Features:
Resolution: Svga 640x480 - 256 colors
Identical features as Treno.
Download:
SUDOKU Type: solitary game
Players: 1
Statements: sudoku
Description: If you want to
have fun with the damned sudokus!! This program is a graphical
interface for the files createrd with the Sudoku
Builder: when you launch it, it will run the Sudoku Builder and
after that it will display the sudoku in a beautiful 640x480 screen.
You can move the cursor with the arrow keys and if you press ENTER the
cursor will change color and you can insert any number from 1 to 9.
Putting a 0 is equal to delete the number you wrote before (you can
change only the boxes which are initially empty, not the ones with the
fixed numbers!). If you press the \ key (just
left of the 1 key in the italian keyboard, don't know in the others!)
you can put two (different) number in the same box, it is
obvious that in the final solution you must have only one number for
each box, but this can be useful to discharge some possible numbers and
reach the solution. If you press ESC the game will be saved and you
will return to Windows. The games will be saved in the SAVE
folder, the
files are labeled saveXXXX.sdk,
with a progressive number at the place
of the X's
(from 0000 to 9999). If you want to continue a saved game, the
ideal thing is to associate to the .sdk extension the Sudoku program
(if you click twice on a saveXXXX.sdk
file for the first time Windows
will ask you which program you want to use to open it, you have to
select the Sudoku program and select the box which says "always open
this type of file with this program"), so that it will be sufficient to
click twice on any save file
to continue the saved game.
Note: in the ZIP file there are the complete program and the Sudoku
Builder (necessary): this one, also with some other files and folders
of Sudoku program, it's invisible, because normally you don't need it
and as a result the folder is cleaner. You can make them visible if
you want (who wants to make them visible also know how to do it...).
One of the invisible folders is the famous DATAfolder
of the Sudoku
Builder, if you click twice on any file in this folder (gameXXXX.sdk
or soluXXXX.sdk)
the saved game numbered XXXXwill
start (it's the same
thing as clicking on saveXXXX.sdk,
the program consider only the number
and not if the file you clicked is of game, soluor savetype).
Features:
Resolution: Svga 640x480 - 256 colori
Identical features as Treno and Quattro.