DHPOS, 64 bit in QB64

Make comments, ask questions, or just complain about the software on this site. Or comment on any educational software.
Please note that by clicking on links that may appear in these posts that you may be leaving the Dale Harris Educational Software website and that the content of those sites is the sole resposibility of the authors of those sites.

Moderators: daleadmin, Dale Harris, Alan, Andrew

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Fri Jan 06, 2012 5:18 pm

There has actually been progress on converting DHPOS to QB64. Problems overcome since the last post.

QB64 does not have the DIR$ command that is used to read the file names from the disk so that you can choose the one you want. So I wrote a routine that does the same thing without using DIR$.

QB64 does not support the "Currency" data type and does not support the MKC$() and CVC() commands required to read / write the currency data type. I have found that the QB64 _INTEGER data type can replace the currency data type (sort of) and have found a way to read / write "currency" information from your old files anyway. Thanks to small, Clippy, DeeBee, and others for their help.

Below is a list of all the program files that comprise DHPOS. The ones followed by astericks either not require conversion (Jon's stuff). The ones with download links are new and you can download them for testing.

Some files will be combined. For example POSCONFG.EXE, CF.EXE and CF2.EXE will be combined into one file since the 640K memory limit does not apply to QB64.

TESTING
Needless to say I need these file to be tested. To do this create a new folder and copy all the current DHPOS files to it. Now copy all the the files above that have download links. You must also download and unzip the .DLL files here http://dl.dropbox.com/u/8440706/Program64.zip

The current 7.1j version of DHPOS and this new QB64 version are data file compatible. This means that both versions can read the same files. However if you try to call a QB64 program file from a DOS program file the DOS version will just shut down.


aprint6.exe *
http://keyhut.com/bigpole.exe
cf.exe
cf2.exe
http://keyhut.com/closecnt.exe
convert.exe
fileinfo.exe
fix_hist.exe
giftcard.exe
hourly.exe
http://keyhut.com/kitchen.exe
http://keyhut.com/lookup.exe
http://keyhut.com/mailex.exe
http://keyhut.com/mallfile.exe
pole.exe *
pos.exe
posconfg.exe
http://keyhut.com/programs.exe
http://keyhut.com/purchase.exe
rec2csv.exe
http://keyhut.com/receive.exe
http://keyhut.com/reconvrt.exe
http://keyhut.com/remote.exe
http://keyhut.com/sondscan.exe
stocks.exe
textread.exe
theater.exe
http://keyhut.com/timeclok.exe
timer.exe

emery
Forum Regular
Posts: 98
Joined: Sun Jun 19, 2011 7:35 pm
Location: Canada
Contact:

Re: DHPOS, 64 bit in QB64

Post by emery » Fri Jan 06, 2012 5:46 pm

:mrgreen:
DSC "Dhpos Self Checkout" Is currently being worked on again, the new site is at
http://dhpos.midislandsnoblazers.ca

User avatar
small
Forum Regular
Posts: 135
Joined: Mon Sep 05, 2005 10:22 pm
Location: Carmi, Illinois

Re: DHPOS, 64 bit in QB64

Post by small » Fri Jan 06, 2012 7:05 pm

I wrote a program to allow you to check and see if a new version of DHPOS is available.


you can download it from: http://www.megaupload.com/?d=DXS5CMZ0


Please leave feed back.


Must be run on windows xp and above.

Download and run the self extracting file. Then read the readme.txt file.

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Sat Jan 07, 2012 3:35 pm

On the road to 64 bits I have run into a serious problem which is being discussed here. http://www.qb64.net/forum/index.php?topic=5131.0

Dale

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Tue Jan 10, 2012 7:50 pm

I have gotten the POS.EXE program to compile. Unfortunately with fatal bugs that need to be stomped on.

But it now looks like this can happen eventually.

Dale

emery
Forum Regular
Posts: 98
Joined: Sun Jun 19, 2011 7:35 pm
Location: Canada
Contact:

Re: DHPOS, 64 bit in QB64

Post by emery » Tue Jan 10, 2012 8:17 pm

:mrgreen:
DSC "Dhpos Self Checkout" Is currently being worked on again, the new site is at
http://dhpos.midislandsnoblazers.ca

User avatar
brucef2112
Forum Regular
Posts: 335
Joined: Mon Mar 06, 2006 11:19 pm
Location: Broward County, Floriduhh
Contact:

Re: long VAR list

Post by brucef2112 » Wed Jan 11, 2012 12:40 am

Dale
A SUB with forty VARs seems like a visit to 'crazy town' with a good sprinkling of 'error opportunity' with each CALL. :) :-)
I'm sure you were trying to beat some short comings (of qb45 perhaps) in having to pass so many VARs. I've never qb45'd, so I don't know. Nor do I know the details of your SUB. But in general I think DeeBee has good advice about re-structuring the SUB. In all my VB programming I think i've maxed out a VAR count of 10 to 12 to a SUB or FUNCTION. And while I was coding some subs with larger VAR counts I'd said to myself there has got to be a less complicated solution. There almost always was.

As you know programmers are known to be lazy people. So there is something magical about the phrase; "I'll fix it later" when spoken by a programmer. It just doesn't happen! I think Clippy is right about 'fix it now not later'. If Galleon fixes qb64 and allows your sub to work you will most likely never look at the code again to try and restructure it. I'll admit just as Clippy; I've written spaghetti code FUNCTIONS that worked and I never went back later to fix it, only because it WORKED...(or because I said the magic phrase. I don't know...).
Anyway, I second DeeBee and Clippy advice. It will only hurt a little now.
b
Later,
Bruce

They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."
Benjamin Franklin - Historical Review of Pennsylvania, 1759

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Wed Jan 11, 2012 4:53 pm

Bruce,

Actually it has so far been quite painful.

The 3 big SUBs were originally in the MAIN part of the program. But as that module grew to over 56k in size the program would no longer compile. To solve that problem I off-loaded the code into another module as a SUB. This happened 2 more times and another big hunk of code was moved from the MAIN into a SUB of another module.

So the obvious solution is to just move the SUBs back in to the MAIN program. Unfortunately in the years that the SUBs have exsisted they have expanded to handle new functions and many of the simple variable names that are used in the SUBs are also used in the MAIN. This causes a massive conflict and fatal bugs in the program.

So now I am trying to track down these conflicts and get the program to not only compile but to actually function. This is also hampered by the compile times in QB64. In QB71 the program does not have to compile to run in the editor, it executes as soon as you press [F5]. QB64 has to compile the program into an .EXE file and it then runs that. Compiling takes about 3 minutes. This means that to test every small change in the code takes 3 minutes plus the time it takes me to make the change. NO FUN, it seems to take forever to fix every little thing.

Dale

emery
Forum Regular
Posts: 98
Joined: Sun Jun 19, 2011 7:35 pm
Location: Canada
Contact:

Re: DHPOS, 64 bit in QB64

Post by emery » Wed Jan 11, 2012 6:36 pm

daleadmin wrote: This is also hampered by the compile times in QB64. In QB71 the program does not have to compile to run in the editor, it executes as soon as you press [F5]. QB64 has to compile the program into an .EXE file and it then runs that. Compiling takes about 3 minutes. This means that to test every small change in the code takes 3 minutes plus the time it takes me to make the change. NO FUN, it seems to take forever to fix every little thing.
Isn't it a GREAT feature? :mrgreen:
DSC "Dhpos Self Checkout" Is currently being worked on again, the new site is at
http://dhpos.midislandsnoblazers.ca

User avatar
brucef2112
Forum Regular
Posts: 335
Joined: Mon Mar 06, 2006 11:19 pm
Location: Broward County, Floriduhh
Contact:

Re: DHPOS, 64 bit in QB64

Post by brucef2112 » Wed Jan 11, 2012 7:44 pm

Dale,
Sounds like; perhaps a stay at Hoa Lo would be a more pleasant alternative to coding dhpos to qb64.
Later,
Bruce

They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."
Benjamin Franklin - Historical Review of Pennsylvania, 1759

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Wed Jan 11, 2012 7:56 pm

Bruce,

Hoa Lo would be far down my list of alternatives to programming in QB64 but it is not like I have a choice. Well there is a choice, either convert to QB64 or something similar or not be able to run DHPOS on newer computers.

Dale

User avatar
small
Forum Regular
Posts: 135
Joined: Mon Sep 05, 2005 10:22 pm
Location: Carmi, Illinois

Re: DHPOS, 64 bit in QB64

Post by small » Fri Feb 17, 2012 1:23 pm

Very long variable list in CALL statement on QB64.

Galleon says This code will work after the next update

Quote

will the problem with the number of variables in a CALL statement be fixed?

I took a look at this today. Turns out I thought QB64 was limited to 60 parameters, but as separators are included in that 60 (and commas are separators) the real limit was only about 30. Personally I don't think anyone should need more than 20 but everyone is entitled to their own coding style. Therefore I fixed the system so it would accept up to 100 parameters and give a meaningful error "SUB/FUNCTION exceeds 100 parameter limit" when you try and exceed this.
8) 8)

User avatar
daleadmin
Forum Owner
Posts: 1277
Joined: Tue Dec 30, 2003 9:47 pm

Re: DHPOS, 64 bit in QB64

Post by daleadmin » Fri Feb 17, 2012 7:52 pm

small,

This is great news. Hopefully by the time I have the rewards feature finished Galleon will have fixed this and I can get on with QB64.

Dale

Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests