Sunday, August 11, 2013

N.N. Multi Image Viewer

Back in 1997! Windows 95 was in its best. Multimedia applications was few (most of them were shareware), especially image viewers. So, I was looking for a convenient image viewer to have in my desktop.
Learning Delphi by my self, I managed to create a little image viewer application for Windows, called NN-MultiImage Viewer. This application is divided in 3 parts, folder selection in the left, the preview part in the middle and the file list in the right.
The application has the ability to set a selected image from the file list as desktop background. It has, also, a preview window with thumbnails. I really enjoy this app!




The application can be downloaded from here.

Tuesday, August 6, 2013

Easy-Access εφαρμογή για το www.tranzistoraki.gr

Μετά από μια ιδέα που γεννήθηκε σε μια παρέα, μέλος της οποίας είναι ο διαχειριστής του Ηλεκτρονικού Μουσικού Περιοδικού www.tranzistoraki.gr, δημιουργήθηκε μια Easy-Access εφαρμογή για Android για το εν λόγο διαδικτυακό τόπο. 
Μέσα από την εφαρμογή ο χρήστης έχει άμεση πρόσβαση Πολιτιστικές εκδηλώσεις στη Ρόδο, Αθήνα και Θεσσαλονίκη, ενημέρωση για μουσικές και θεατρικές παραστάσεις, νέες κυκλοφορίες δίσκων και βιβλίων, ραδιοφωνικά νέα και πολλούς διαγωνισμούς!


Την εφαρμογή μπορείτε να την βρείτε εδώ.
Επισκεφθείτε το Περιοδικό εδώ.

Saturday, July 20, 2013

Windows Desktop in DirectX!

The head of my old PC was a CTR Philips Brilliance 15A. This specific monitor hasn't any geometry settings in the front panel, just the basic (contrast, brightness and volume controls). It was arrived with an application that gives the customer all the controls needed to control the screen.So far so good. 
The problem was appeared in games! Once a game started, the monitor went in DirectX mode, loosing all desktop geometry settings, and of course, there was no ability to run the above software! So, how was it possible to do the geometry settings I needed without leaving the desktop and staying  in game mode (DirectX)?
This problem motivated me to create an application that switch a Windows desktop to DirectX mode. Using some basic functions of DirectX API, I was able to write a small piece of software, called DXSwitcher.
This app can be downloaded from here.


Saturday, May 4, 2013

Arduino IDE OPEN/SAVE problem in Ubuntu


Finally, Arduino UNO has arrived. I've downloaded IDE tool and tested some examples. But a serious problem appeared that gave me a headache! Open and Save feature stops with a Java NullPointer Exception!!!


Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: NullPointerException
at sun.awt.motif.MFileDialogPeer.setFont(Native Method)
at sun.awt.motif.MComponentPeer.initialize(MComponentPeer.java:182)
at sun.awt.motif.MComponentPeer.init(MComponentPeer.java:226)
at sun.awt.motif.MWindowPeer.init(MWindowPeer.java:103)
at sun.awt.motif.MDialogPeer.<init>(MDialogPeer.java:39)
at sun.awt.motif.MFileDialogPeer.<init>(MFileDialogPeer.java:24)
at sun.awt.motif.MToolkit.createFileDialog(MToolkit.java:263)
at java.awt.FileDialog.addNotify(FileDialog.java:265)
at java.awt.Dialog.conditionalShow(Dialog.java:887)
at java.awt.Dialog.show(Dialog.java:1035)
at java.awt.Component.show(Component.java:1584)
at java.awt.Component.setVisible(Component.java:1536)
at java.awt.Window.setVisible(Window.java:842)
at java.awt.Dialog.setVisible(Dialog.java:986)
at processing.app.Base.handleOpenPrompt(Base.java:649)
at processing.app.Base$3.actionPerformed(Base.java:906)



There was no answer even after some google searches. I was so disapointed that I setup Eclipse with AVR plugin to do my experiments. Examining the "AWT-EventQueue-0" error I looked for some environmental set relevant to AWT. I found that there was an AWT_TOOLKIT set. Unsetting this solved the problem!!!


$unset AWT_TOOLKIT
$arduino


Wednesday, May 1, 2013

Programmer for Atmel mCs

Waiting for my Arduino Uno to arrive, I had time to dig for an old project of mine, a mini-computer based on Atmel's 8252 microcontroller. I used LPT Paraller Port of my PC to flash the mC. For that purpose I wrote a cool application, called "LPT_Programmer". 
The schematic diagram for the Programmer Cable is shown below. It uses the SCK, MISO, MOSI and SS pins to flash the mC according to the technical datasheet.




The application can Download or Erase the Flash, read EPROM and Reset the mCu. The is also a Device Setup Feature and a communication Settings dialog box.


The application will be available to download very soon!

Wednesday, April 3, 2013

WinPostIt!


Hah, November 2004, some free time to do a very tiny and useful desktop "helper" in windows which can be used to write some notes in a convenient way.

This program can be downloaded from here!























www.myexpenses.gr



Τί είναι το www.myexpenses.gr;

Το myexpenses.gr είναι μια πολυχρηστική εφαρμογή διαδικτύου για την καταχώρηση των αποδείξεων και παρακολούθησης των εξόδων. Η βασική ιδέα στην οποία στηρίζεται η εφαρμογή είναι η γρήγορη εισαγωγή των αποδείξεων με κοινή χρήση των στοιχείων των καταστημάτων από όλους τους χρήστες της εφαρμογής. Η εύκολη εμφάνιση διαφόρων στατιστικών γραφημάτων των εξόδων των χρηστών ανά είδος και ανά κατάστημα για διάφορες χρονικές περιόδους καθώς και η δυνατότητα για εκτύπωση αναφορών για την Εφορία είναι μερικές από τις δυνατότητες της εφαρμογής.


Η εφαρμογή έχει φτιαχτεί με τέτοιο τρόπο ώστε οι καταχωρήσεις των αποδείξεων των χρηστών να είναι προσωπικές και με κανέναν τρόπο να μην είναι διαθέσιμες στους υπόλοιπους χρήστες της. Τα στοιχεία των καταστημάτων είναι κοινόχρηστα μεταξύ των εγγεγραμμένων χρηστών της εφαρμογής και δυνατότητα αλλαγών έχουν όλοι οι χρήστες.



Ενημέρωση: Η εφαρμογή έχει σταματήσει να λειτουργεί πλέον.


Tuesday, April 2, 2013

An advanced software tool for analyzing and interpeting Gardiotocograms


A post for a paper in 4th International Conference Neural Networks and Expert Systems in Medicine & Healthcare, Milos, Island, Greece, 20-22 June 2001....

ABSTRACT: Labour is a stressed procedure for both the fetus and the mother and a key issue for fetus surveillance is the detection of fetal distress. This paper describes a software tool that has been developed in order to monitoring fetus status by acquiring and processing the Cardiotocogram (CTG). This software tool establishes a communication between PC and the cardiotocograph, the medical device that records and prints out the Fetal Heard Rate and the Uterine Activity. Then, the software tool pre-processes the signal from the cardiotocographic device, artifacts are removed and non-signal parts (gaps) are filled utilizing an interpolation method. The more advanced part of the software tool includes the processing of CTG signal, extracting the characteristics of the signal such as baseline, variability, accelerations and decelerations. According to these characteristics, CTG can be evaluated and comments on the physiological or not status of the fetus can be done and giving an objective estimation on the health of fetus to the doctor.

Read paper here: PDF


Tuesday, January 15, 2013

Dos to Unix Text Converter for Windows

Back in 2003, a team of civil engineers from university ask from me an easy way to convert some output text files from a static-modelling tool (running in a Unix machine) to Windows format for post-processing. The problem was that they did want a text editor but just a simple drag'n'drop application for the conversion.
 For this purpose I created a small application called "Dos2Unix Converter" with line-termination autodetection, drag'n'drop, command line execution and Windows Explorer integration capabilities for Windows OS.

You can download the application, for free, here:



Once again: S.F.M.B.E.





Sunday, January 13, 2013

Game of life in Android!

"The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, alive or dead. Every cell interacts with its eight neighbours, which are the cells that are horizontally, vertically, or diagonally adjacent. At each step in time, the following transitions occur:

  • Any live cell with fewer than two live neighbours dies, as if caused by under-population.
  • Any live cell with two or three live neighbours lives on to the next generation.
  • Any live cell with more than three live neighbours dies, as if by overcrowding.
  • Any dead cell with exactly three live neighbours becomes a live cell, as if by reproduction.

The initial pattern constitutes the seed of the system. The first generation is created by applying the above rules simultaneously to every cell in the seed—births and deaths occur simultaneously, and the discrete moment at which this happens is sometimes called a tick (in other words, each generation is a pure function of the preceding one). The rules continue to be applied repeatedly to create further generations."

"Conway was interested in a problem presented in the 1940s by mathematician John von Neumann, who attempted to find a hypothetical machine that could build copies of itself and succeeded when he found a mathematical model for such a machine with very complicated rules on a rectangular grid. The Game of Life emerged as Conway's successful attempt to drastically simplify von Neumann's ideas. The game made its first public appearance in the October 1970 issue of Scientific American, in Martin Gardner's "Mathematical Games" column. From a theoretical point of view, it is interesting because it has the power of a universal Turing machine: that is, anything that can be computed algorithmically can be computed within Conway's Game of Life."

Stereogram Creator PRO

One of my oldest projects is Stereogram Creator PRO. The idea of making the Stereogram Creator PRO was born in 1995 during computer lessons at the university. The facinating world of stereograms, first saw in books, attracks me so badly that motivated me to develop a little algorithm for stereogram creation. After speding thousand of hours on my PC (a 286 machine) to develop an algorith, I created my first stereogram.
 The next step was to create a stereogram with a real picture as a source image, not a custom paint created with graphics routines (circles etc). A shareware program (I cannot remember its name) was painting a bmp/gif in the screen and my program, written in BASIC, was creating the stereogram. The first attempt to create an integrated enviroment (version 1!) is with BASIC under DOS. The program was a piece of art but was....under DOS and had not so many capabilities.
 Two years later I decided to re-develop the SCP under Windows, this time with a real and easy interface with full-graphics capabilities! After one year of development, among with study in university and other activities, SCP2 was ready! My excitement was so stronge that I decided to share it with people. So I published SCP2 on the web, firstly in a shareware/demo version but after a second thought I decided to publish it as a freeware.
The application is here: SCP site.

Notice: A registration to a mailing list is required to succesfully run the application. This is for keeping records of the number of downloads. I know that it'is a little bit of weird but it was one of a prohistoric methods those days... 







Eclipse is (was) very slow! (affects AndroidStudio also)

After upgrading from Ubuntu 10.04 to Ubuntu 12.04, I had problems with Eclipse Application, which I use for Android development, as suggested by Google dev team.
First of all, the repository package of Eclipse in 12.04 is just not running. It keeps crashing on startup.
So, I've downloaded the Eclipse 4.2 from official site and installed it.
But the performance was too poor. And this is a fact for many people, not just for me. After some google searches and many tests, I ended up with a magic eclipse.ini file configuration that speeds up Eclipse:

-startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.200.v20120522-1813
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction openFile
-server
-vmargs
-Xms512m
-Xmx1024m
-XX:PermSize=1024m
-XX:MaxPermSize=1024m
-Xverify:none
-XX:+UnlockExperimentalVMOptions
-XX:+UseG1GC
-XX:+UseFastAccessorMethods

Now my Eclipse is running normally and I am able to continue my projects!

Reference: http://www.eclipse.org/forums/index.php/mv/msg/367243/0/40/

Note: S.F.M.B.E. (sorry for my bad english!)

Addition: This also applies to new Android Studio IntelliJ IDEA. Just locate studio.vmoptions in bin folder and increase heap as above!

Saturday, January 12, 2013

Simple And Beautiful!


I've had enough of fancy wallpapers and landscape pictures to decorate my Android device.
 So I decided to create a tiny application for doing a very simple thing....to draw a solid-color background! After a while, I decided to add some effects like color-cycling and faded-out edges! And so I did. But the wallpaper looked "very empty", and I added the ability to draw a smooth Android robot figure in the center.
The result was :  Simple & Beautiful!

From since, the application riched with more funny figures.





Here are some screenshots: