Chit chat

======

Change in government. Hope opportunities will be better.

Learning more tricks with The Gimp.

Found the source code for a program I did years ago that was sort of a wedding gift sign up. Will have to put Visual basic on a   machines so I can take some screen shots.

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

Wanted a simple business program that I could run on a minimal or embedded machine that emulated the old Fish Market Dbase example from years ago. Probably could of used Harbour software, but was not happy with it. Dbase is no longer around, so I can not run it on Linux.  Could always use a sql program to control the database. Decided to use bash as the front end, Next was to see how hard it would be to emulate the the screens generated in Dbase.

Commented in an earlier article that it is good to know several languages. Here even knowing just a minimal amount about the dbase language allowed there to be a port of the code. Two examples of the code where one was done with dbase and the other was done in bash. Fortunately I was able to convert the main menu for starters. Here are the two screen shots accomplishing the same goal of a main menu:

 

Actually it was not that hard to port the code from dbase to bash so far. In fact the code for both looks a lot the same.

Dbase:

mainmenu,prg

**************************************
*                                    *
*       Main                         *
*       Eddie’s fish market          *
*       main menu                    *
*       main.prg                     *
*                                    *
**************************************
set catalog to fredfish
set catalog on
set delimiter off
set echo off
set exact off
set talk off
set bell off
set confirm off
set intensity on
set status off
set deleted on
store .f. to exit
store ‘ ‘ to option
clear
do while .not. exit
@  1,20 say “Eddie’s Friendly Fish Market”
@  3,20 say ‘    Main Menu’
@  7,20 say ‘Enter selection: ‘ ;
get option
@ 10,22 say ‘1 – Customer system’
@ 11,22 say ‘2 – Employee system’
@ 12,22 say ‘3 – Order system’
@ 13,22 say ‘4 – Inventory system’
@ 15,22 say ‘X – Exit system’
@ 21,12 say ‘Copyright (c) 1994 by tabby little books’
@ 22,12 say ‘Copyright (c) 1994 by kermit the phrog’
read
do case
case option = ‘1’
do customer
case option = ‘2’
do employee
case option = ‘3’
do order
case option = ‘4’
do inventory
case upper(option) = ‘X’
return
otherwise
? chr(7)
@ 5,18 say ‘*** invalid entry – retray again ***’
endcase
store ‘ ‘ to option
enddo

mainmenu.sh

#!/bin/bash
#**************************************
#*                                    *
#*       Main                         *
#*       Eddie’s fish market          *
#*       main menu                    *
#*       main.sh                      *
#*                                    *
#**************************************
#===============================
# Functions
#——————————–
# pc = position cursor
function pc () {
tput cup $1 $2
}
#===============================
# daffinitons
#——————————-
# set catalog to fredfish
# set catalog on
# set delimiter off
# set echo off
# set exact off
# set talk off
# set bell off
# set confirm off
# set intensity on
# set status off
# set deleted on
# true=”-1″
exit=”f”
option=” ”
#=====================================
# main menu
#————————————-
clear
while true; do
pc  1 20 ; echo “Eddie’s Friendly Fish Market”
pc  3 20 ; echo ‘    Main Menu’
pc  7 20 ; echo ‘Enter selection: ‘
pc 10 22 ; echo ‘1 – Customer system’
pc 11 22 ; echo ‘2 – Employee system’
pc 12 22 ; echo ‘3 – Order system’
pc 13 22 ; echo ‘4 – Inventory system’
pc 15 22 ; echo ‘X – Exit system’
pc 21 12 ; echo ‘Copyright (c) 2014 by computothought’
pc 22 12 ; echo ‘Copyright (c) 2014 by computoman’
pc 7 37
read -s -n1 option
case $option in
[1] )
./customer.sh
;;
[2] )
./employee.sh
;;
[3] )
./order.sh
;;
[4] )
./inventory.sh
;;
[xX] )
pc  25 1
break
;;
*)
# printf ‘\a’ ;
# beep
pc 5 18; echo ‘*** invalid entry – retry again ***’
;;
esac
option=” ”
done
#———————————————–
# end of code
#================================================

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

Gosh, I was going through some really old files and found the file names were all in upper case. Normal for things coming from an old DOS machine.

$ ls
ACCT.DAT      ADVERT.BAS  ARPTINV.BAS   BCREATEI.BAS  DBEDIT.BAS    GAMMNDBL.BAS  LIZZYRPT.BAS  LSTMORTI.BAS  RECEDIT.BAS   SEBRWKRL.BAS
ADDRADD.BAS   ANSWER.ASC  AS2RCUST.BAS  BFLISTI.BAS   DBPREP.BAS    GAMORACL.BAS  LIZZYTRM.BAS  LSTREC.BAS    RLETTER       SENSOR.BAS
ADDRFIL.BAS   ANSWER.CIT  AS2RREV.BAS   BINCOMEI.BAS  DUMBMENU.BAS  HPOPMENU.BAS  LIZZYWRD.BAS  LSTSCHDP.BAS  SAMPLE        TEMP.DAT
ADDRPRNT.BAS  ANSWER.MSG  ASCFLCMP.BAS  BMENU.BAS     FIXEDFIL.TXT  LIBFIX.BAS    LSTASC.BAS    MAPDICT.BAS   SEBRCUST.BAS  VPOPMENU.BAS
ADVANWIN.BAS  ARC.TTP     BCLOSEI.BAS   DATAFILE.BAS  GAMELIZA.BAS  LIZZYCLC.BAS  LSTIOLOG.BAS  PHNDTCT.BAS   SEBRREV.BAS   WORDEDIT.BAS

When you are used to dealing with lower case, this can be a challenge. We used to say that people who used upper case were always yelling. (from the old bbs days).

Needed to change the filenames on these files to lower case.  Fortunately found a script to do just that. so the results were:

$ ls
acct.dat      advert.bas  arptinv.bas   bcreatei.bas  dbedit.bas    gammndbl.bas  lizzyrpt.bas  lstmorti.bas  recedit.bas   sebrwkrl.bas
addradd.bas   answer.asc  as2rcust.bas  bflisti.bas   dbprep.bas    gamoracl.bas  lizzytrm.bas  lstrec.bas    rletter       sensor.bas
addrfil.bas   answer.cit  as2rrev.bas   bincomei.bas  dumbmenu.bas  hpopmenu.bas  lizzywrd.bas  lstschdp.bas  sample        temp.dat
addrprnt.bas  answer.msg  ascflcmp.bas  bmenu.bas     fixedfil.txt  libfix.bas    lstasc.bas    mapdict.bas   sebrcust.bas  vpopmenu.bas
advanwin.bas  arc.ttp     bclosei.bas   datafile.bas  gameliza.bas  lizzyclc.bas  lstiolog.bas  phndtct.bas   sebrrev.bas   wordedit.bas

Much better now. Oh yes how to do it.

#!/bin/sh
# lowerit
# convert all file names in the current directory to lower case
# only operates on plain files–does not change the name of directories
# will ask for verification before overwriting an existing file
for x in `ls`
do
if [ ! -f $x ]; then
continue
fi
lc=`echo $x  | tr ‘[A-Z]’ ‘[a-z]’`
if [ $lc != $x ]; then
mv -i $x $lc
fi
done

Pretty nifty!

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

Openbsd as an alternative to linux for very low end machines.

Openbsd is a nix cousin of Linux. Has the ability to run on lower end systems that are internet ready. (i.e. All CPUs compatible with the Intel 80486 or better, with Intel-compatible hardware floating point support should work). Here is a couple of pxeboot scripts where you can use the internet to install it even via a floppy.

Two examples: (systems supported at http://ftp3.usa.openbsd.org/pub/OpenBSD/5.6/)

version 5.4 – amd64
dhcp net0
kernel -n img http://static.netboot.me/memdisk-iso iso
initrd -n img http://ftp3.usa.openbsd.org/pub/OpenBSD/5.4/amd64/cd54.iso
boot img

Version 5.6 – i386
dhcp net0
kernel -n img http://static.netboot.me/memdisk-iso iso
initrd -n img http://ftp3.usa.openbsd.org/pub/OpenBSD/5.6/i386/cd56.iso
boot img

You will need to go to http://www.romomatic.org to create the boot media. Choose the most recent release.

Then you will get the configuration page. Choose which media you want to use.

Click on customize to enter the pxeboot script

Press get image. the image will be saved to your drive as a file. Then you will need to use the dd command to write the image to your boot media.

You can start up the machine to have openbsd installed to with the boot media. Notice the menu is frugal. Makes it easier to install on lower end machines. If you are not familiar with Openbsd, it is a bit different than linux, so you may want to check out some install docs first. (http://www.openbsd.org/faq/faq4.html)

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

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

Not many people are aware unless you are an old timer, but you could and still can access the world wide web from a DOS (freedos or etc) machine. Myself first access was with Mosaic and Netscape from MSWindows. To access the internet you had to have a network card. Everyone knew about a modem card, but the ethernet network card was something magical. But also back in those days to any anything up you had to deal with jumper switches (possible nightmare) until plug-n-play came along.

Notice the coaxial cable connector. Yes the ethernet cables were not popular yet. You set up your network in a bus rather than the star configuration we use today, If one link of the bus network was not connected right the whole network would be down. Anyway, just like today you have to have special software aka drivers for your computer to talk to the network cards. The network drivers were sometimes known as packet drivers. You sent packets of data on the network is where that idea came from. One of the most popular packet drivers was Wattcp.

When I worked as a tech, we used the drivers mostly for booting up machines to work with the Norton Ghost software. Today of course, you can use such software as Clonezilla and others. But actually there is a lot of software that can take advantage of the drivers such as a dosvnc (remote desktop viewer).You could even get software to be a mail server plus much much more.

Not many people knew that you could actually get a graphical software to view the web. Of course, you still needed to set up the packet drivers before loading in program known as Arachne. There were a few others, but they could not do as well as Arachne. Eventually a Linux version was made of the web browser.

 

 

Of course, the complement to the web browser is the web server. There are several out there including Boa which I like for old command line linux machines. Yes and even for the web server you have to set up the packet drivers to get everything to work together. Only recently, did I find out about a dos based we server known as the Rubber Mallet web server. You can find out more about it at: http://www.instructables.com/id/Retro-dos-web-server/.

Actually it is quite good for little as it does. It is a good first start at learning legacy html commands. Had even planned to do some home automation with it, but moved on to other software. One thing to be aware of is all the old dos software is NOT secure. So it is best used on a private intranet. So yes, Virginia, you could set up a dos network like a mini internet!

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

Homemade orzo with pulverized mixed vegetables as the sauce.

orzovegesauce

Good day.

Advertisements