.NET Forum / Languages / VB.NET / July 2007
Converting from an ancient BASIC to new database
|
|
Thread rating:  |
Randy Reimers - 07 Jun 2007 22:28 GMT (Hope I'm posting this correctly, otherwise - sorry!, don't know what else to do) I wrote a set of programs "many" years ago, running in a type of basic, called "Thoroughbred Basic", a type of business basic. I need to re-write it, bring it kicking and screaming to run on Windows XP. This is for a video rental place, tracks movie and game rentals, customers, employee transactions, reservations, does reports,..... and on. I know some of Visual Basic - I now write VB scripts for work. Can anyone help with suggestions, as to converting this to a new language? What may be easiest for me? And, what type of database engine would be best? SQL, Access, flat files, I don't know enough. This does NOT run under Windows, Linux, or any "new" OS - but I can export all the files, and programs to DOS. They currently are running on 20-30 286 or 386 computers - not a misprint - OLD! Not networked, not neccessary. The data files it uses are called "Direct" and "Sort". I have about 90 programs, a few are overlays, most are stand-alone, 25-30 are just for reporting purposes. It can stay character based - no need for fancy screens or pix.
Here is a sample: 0010 REM "RENTAL/MEMBERSHIP SYSTEM TOP HALF AND SUBMENU" 0020 REM "PROGRAM VID-AA" 0030 REM 06/07/99
0050 BEGIN 0060 PRECISION 2 0070 SETERR 09000 0080 DIM B$(80,"-"),B1$(80,"_"),B2$(80,"<"),S$(80," "); IF FID(0)="T0" THEN DIM B2$(80,CHR(205)) 0090 DEF FNA$(X$)=X$(1,2)+"/"+X$(3,2)+"/"+X$(5,2) 0100 DEF FNC$(X$)=X$(3,2)+"/"+X$(5,2)+"/"+X$(1,2) 0110 DEF FND$(X$)="("+X$(1,3)+") "+X$(4,3)+"-"+X$(7,4) 0120 DEF FNE$(X$)=X$(1,2)+X$(4,2)+X$(7,2) 0130 DEF FNF$(X$)=X$(5,2)+X$(1,4) 0140 DEF FNZ$(X$)=X$(1,POS(" "=X$+" ")-1) 0150 OPEN (6) "CONTRO" 0160 READ (6,KEY="001") *,N1$,*,A0$,A1$,A2$ 0170 READ (6,KEY="TODAY") Z9$,Z8$ 0180 LET E1$=""; READ (6,KEY="RENT"+FID(0),DOM=00200) E1$,T 0190 REMOVE (6,KEY="RENT"+FID(0)) ; IF T<>TIM THEN LET E1$="" 0200 IOLIST M0$(1,250),M(0),M(1),M(2),M(3),M(4),M(5),M(6),M(7),M(8),M(9),M (10),M(11),M(12),M(13),M(14),M(15),M(16)
0210 REM "OPEN FILES"
0220 OPEN (1) "VID01" 0230 OPEN (2) "VIDST" 0240 OPEN (3) "VIN01" 0250 OPEN (4) "PHONEY" 0260 OPEN (5) "VIV02" 0270 OPEN (8) "IDSRT" 0280 OPEN (9) "VIN02" 0290 OPEN (10) "VIN03" 0300 OPEN (11) "RSVST" 0310 OPEN (12) "VINST" 0320 OPEN (14) "VIN04"
0330 REM "PAINT SCREEN"
0340 LET N3$=FNZ$(N1$)+" - MEMBERSHIP SYSTEM" 0350 LET Y$=FNF$(FNE$(Z9$)),Y=NUM(Y$(3,2))-6 0360 IF Y<1 THEN LET Y$(1,2)=STR(NUM(Y$(1,2))-1:"00"),Y$(3,2)=STR(NUM(Y$(3,2))+6:"0 0") ELSE LET Y$(3,2)=STR(Y:"00") 0370 PRINT 'CS','SB',@(36-INT(LEN(N3$)/2),0),N3$,'BG',@(0,1),B2$,'EG','SF'
0380 PRINT 'SB',@(0,2),"NUMBER",@(15,2),"LAST NAME",@(50,2),"INVOICE #",@( 0,3),"COMMENTS",@(65,3),"LAST TIME",@(56,4),"HARDWARE",@(0,4)," NAME",@(35,4),"DL#",@(42,5),"VCR OWNER?",@(55,5),"MAILING?",@(6 6,5),"TYPE",@(0,5),"ADDRESS",@(0,6),"ADDRESS",@(42,6),"JOINED", @(58,6),"LAST ACTIVITY",@(0,7),"ZIP",@(18,7),"CARRIER ROUTE",@( 42,7),"MTD",@(51,7),"YTD",@(61,7),"HOLD",@(0,8),"PHONE HM",@(24 ,8),"WK",@(42,8),"#LT",@(50,8),"#FREE",@(60,8),"#MP",@(0,10),"T OT $$",@(16,10),"IG",@(25,10),"IM",@(34,10),"IU",@(43,10),"IV", @(52,10),"IX",@(62,10),"UNPAID FEE",'BG',@(0,9),B2$,@(0,11),B2$ ,'EG','SF'
0390 REM "IOLISTS"
0400 IOLIST 'LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','L D','LD'
0410 REM "EXTRA SETUP"
0420 LET M5$="##0",M6$="####.00-",M7$="###.00-" 0430 READ (6,KEY="DUEDATE") D1$; LET D4$=D1$,D2$=D1$ 0440 READ (6,KEY="STORENUM",DOM=00441) R8 0450 DIM Z5$(36); READ (6,KEY="DZIP",DOM=00451) Z5$(1,9) 0460 READ (6,KEY="DACODE",DOM=00461) Z5$(10,3) 0470 READ (6,KEY="DAADDR",DOM=00471) Z5$(13,24) 0480 LET D5$=S$(1,6); READ (6,KEY="HANDOUT",DOM=00490) D5$,D6$
0490 REM "SOLICIT MEMBER NUMBER"
0500 IF E1$<>"" THEN LET E0$=E1$(1,3); IF E1$(1,3)<>S$(1,3) THEN GOTO 00520
0510 GOSUB 02430; IF E0$="" THEN GOTO 00010
0520 PRINT @(7,2),B1$(1,6); IF E1$<>"" THEN PRINT @(7,2),'SB',E1$(4,6),'SF' 0530 DIM M0$(250),M(16); LET M0$(222,1)=STR(R8:"0"),M0$(147,6)=FNE$(Z9$) 0540 LET G$="**",M0$(210,3)=E0$(1,3) 0550 PRINT @(0,23),"F1=I.D. NUMBER",@(0,22),"ENTER MEMBER #, CR=LAST NAME, F2=PHONE SEARCH, F3=NEXT NEW CUSTOMER #, F4=END",; INPUT (0,ERR=00550) @(7,2),Q$,@(0,23),'CL',@(0,22),'CL', 0560 IF CTL=1 THEN GOTO 01240 0570 IF CTL=2 THEN GOTO 01360
0580 LET X=NUM(Q$,ERR=00590); IF LEN(Q$)=7 OR LEN(Q$)=10 THEN LET G$=Q$; GOTO 01370 0590 IF Q$="T" THEN READ (6,KEY="TEMPNUM",DOM=00600) P5; LET P5=P5+1,Q1$=STR(P5:"T00000"); READ (1,KEY=Q1$,DOM=00690) ; WRITE (6,KEY="TEMPNUM") P5; GOTO 00590 0600 IF Q$="END" OR CTL=4 THEN GOTO 09110 0610 IF CTL=3 THEN READ (6,KEY="NXTCUS",DOM=00620) P5; LET P5=P5+1,Q$=STR(P5:"#####0"); WRITE (6,KEY="NXTCUS") P5; READ (1,KEY=Q$,DOM=00680) ; GOTO 00610 0620 IF Q$="" AND E1$<>"" THEN LET Q$=E1$(4,6); GOTO 00710 0630 IF Q$="" THEN PRINT @(7,2),S$(1,6); GOTO 01070
0640 FOR I=1 TO LEN(Q$) 0650 IF POS(Q$(I,1)<"!")<>0 OR POS(Q$(I,1)>"z")<>0 THEN EXITTO 00540
0660 NEXT I 0670 IF LEN(Q$)>6 THEN GOTO 00550
0680 LET Q$=S$(1,6-LEN(Q$))+Q$ 0690 IF Q$="T" THEN LET Q$=Q1$ 0700 PRINT @(7,2),Q$ 0710 LET M0$(1,6)=Q$ 0720 READ (1,KEY=M0$(1,6),DOM=01490) IOL=00200 0730 GOSUB 00740; GOTO 00850 0740 IF M0$(238,1)=" " THEN LET X7$=S$(1,7) ELSE LET X7$="*NOF*"; CLOSE (7) ; OPEN (7) "MEMTY"; READ (7,KEY=M0$(238,1),DOM=00750) X7$; LET X7$=X7$(2) 0750 LET X7$=X7$+S$(1,10) 0760 IF M0$(153,1)=" " THEN LET X8$=S$(1,11) ELSE LET X8$="NOT ON FILE"; CLOSE (7) ; OPEN (7) "VSYH"; READ (7,KEY=M0$(153,1),DOM=00770) X8$; LET X8$=X8$(2) 0770 LET X5$=S$(1,14); IF M0$(112,10)<>S$(1,10) THEN LET X5$=FND$(M0$(112,10)) 0780 LET X6$=S$(1,14); IF M0$(122,10)<>S$(1,10) THEN LET X6$=FND$(M0$(122,10)) 0790 IF M0$(215,6)=S$(1,6) THEN LET X3$="NONE" ELSE LET X3$=FNA$(M0$(215,6))
ArarghMail706NOSPAM@NOT.AT.Arargh.com - 12 Jun 2007 00:29 GMT > (Hope I'm posting this correctly, otherwise - sorry!, don't know what else >to do) > I wrote a set of programs "many" years ago, running in a type of basic, >called "Thoroughbred Basic", a type of business basic. I need to re-write I think that "Thoroughbred Basic" is still around, and they probably have a windows version. Google found: http://www.thoroughbredsoftware.com/datasheet/pbasic.html
 Signature ArarghMail706 at [drop the 'http://www.' from ->] http://www.arargh.com BCET Basic Compiler Page: http://www.arargh.com/basic/index.html
To reply by email, remove the extra stuff from the reply address.
Michael Cole - 12 Jun 2007 01:16 GMT > (Hope I'm posting this correctly, otherwise - sorry!, don't know > what else to do) [quoted text clipped - 12 lines] > running on 20-30 286 or 386 computers - not a misprint - OLD! Not > networked, not neccessary. For what its worth, my approach would be: -
Database first - MS Access. As they are stand alone, SQL Server or others like that (Sybase, Oracle) are overkill. The other options include stuff like dBase, but Access is reasonably common and easy to use, which will make it easier for administration - you should be able to get some people at remote sites who can use it if needed.
Front end - VB6 with DAO access. Again - for ease of use and upgrading of existing code. Note that this does not nessesarily mean that this is the best option for all, but you have existing basic code and a lot should upgrade. In terms of your
> The data files it uses are called "Direct" and "Sort". I have about > 90 programs, a few are overlays, most are stand-alone, 25-30 are just > for reporting purposes. It can stay character based - no need for > fancy screens or pix. If you use VB, then you should make it screen based rather that character based, it is pretty easy and much better for maintenance purposes.
 Signature Regards,
Michael Cole
rowe_newsgroups - 12 Jun 2007 12:02 GMT > > (Hope I'm posting this correctly, otherwise - sorry!, don't know > > what else to do) [quoted text clipped - 38 lines] > > Michael Cole
> Database first - MS Access. As they are stand alone, SQL Server or others > like that (Sybase, Oracle) are overkill. The other options include stuff > like dBase, but Access is reasonably common and easy to use, which will make > it easier for administration - you should be able to get some people at > remote sites who can use it if needed. I might be tempted to use Sql Server 2005 Express if the user's don't already have Access to save them on costs (20-30 computes times $300 for a license of Office - ouch!). I believe you could use the free Express edition in that environment, but you should definitely check it out first.
> Front end - VB6 with DAO access. Again - for ease of use and upgrading of > existing code Again I agree - VB6 would leverage your current skills much better than VB.Net (no I'm not trying to start a cross-language fight here). However if you go the Sql Server route you would need to use OLEDB or OBDC for connecting to Sql Server. Though if you don't have VB6 you could upgrade to .Net and take advantage of the one of the free ide's (VB Express, SharpDevolope, etc) and save yourself some cash.
Thanks,
Seth Rowe
Norman Yuan - 12 Jun 2007 15:53 GMT >> > (Hope I'm posting this correctly, otherwise - sorry!, don't know >> > what else to do) [quoted text clipped - 58 lines] > Express edition in that environment, but you should definitely check > it out first. If using VB6 FE or .NET FE, you do not need to buy MS Access for each computer, no MS Access installation is required at all in this case. You may need buy one for develping purpose, though. One the other hand, a small app in the scope described in OP, MS Access could be the right tool, in spite of the cost of $300 on each user computer, it save a huge amount of development time, if you really know how to do MS Access.
>> Front end - VB6 with DAO access. Again - for ease of use and upgrading >> of [quoted text clipped - 10 lines] > > Seth Rowe meisen@compuserve.com - 12 Jun 2007 19:06 GMT Randy,
You do not have to convert to VB or any other Microsoft derivative to achieve the results you want, and you can do so much less expensively, both in terms of time and money, than walking down the Microsoft path.
The code you posted can be interpreted correctly by current versions of Thoroughbred Basic (www.thoroughbredsoftware.com), VPRO/5 (www.basis.com), and ProvideX (www.pvx.com), with little or no change to the listings.
All three have reasonably inexpensive single-user versions that run under Windows XP. In addition, all three offer resources within their basic interpreters that can adapt your code to the GUI environment.
Best regards,
Michael Eisen
James - 17 Jun 2007 07:09 GMT > Randy, > [quoted text clipped - 15 lines] > > Michael Eisen Good for you. I would also add that if the system grows large enough to be a management problem MYSQL is an excellent alternative to M$ SQL, SybaseSQL, etc. For an Access competitor the database in Open Office is a front runner. All are members of the GPL and all are cross platform OS transparent running on versions of Linux, Unix, Solaris, M$Winx, and some on MacOS10.
James
Randy Reimers - 20 Jun 2007 23:26 GMT Thank you all for the information. Problem is, cost - each one wants about $200 PER computer for the runtime license (needed per computer). This is a small Mom&Pop operation that I am trying to help, the cost becomes prohibitive, when they also have to purchase the newer/new computers. I'm still no closer to a "reasonable" answer for them. So it goes - but thanks - at least I know more now.
Randy
>> Randy, >> [quoted text clipped - 24 lines] > > James James - 22 Jun 2007 21:34 GMT > Thank you all for the information. Problem is, cost - each one wants about > $200 PER computer for the runtime license (needed per computer). This is a [quoted text clipped - 33 lines] >> >> James A later post suggests using a standard basic to run your system & I agree, to a point. If your program used any of the machine specific calls, embedded assembly language, etc. it may not be as easy as it first appears. I had a "basic" language database in the early 80's that handled over 20,000 customers & over 20,000 items with bar code for UPC & code 39, etc. Time to the door was under 30 seconds for rental, purchase or a mix. To "convert" that code to one of the currently available basic languages would be no small task. I have been looking into it. On the other hand the database with open office is free and is compatible with access & Mysql, the GPL version, is also free. All depend on the complexity of your code, how much time is available, and what the future needs of the client may be. Open Office is available at www.openoffice.org & Mysql, the GPL version, is available at http://dev.mysql.com/downloads/maxdb/7.5.00.html. In its day my code outperformed the code written for one of the chains on their mini-computer but was, of course, not multi-user though with a few tweaks could have been. Look at your options. Most were not available just a few years ago.
James
ArarghMail706NOSPAM@NOT.AT.Arargh.com - 22 Jun 2007 22:41 GMT <snip>
>A later post suggests using a standard basic to run your system & I >agree, to a point. If your program used any of the machine specific >calls, embedded assembly language, etc. it may not be as easy as it >first appears. I had a "basic" language database in the early 80's that >handled over 20,000 customers & over 20,000 items with bar code for UPC Just out of curiosity, which one?
<snip>
 Signature ArarghMail706 at [drop the 'http://www.' from ->] http://www.arargh.com BCET Basic Compiler Page: http://www.arargh.com/basic/index.html
To reply by email, remove the extra stuff from the reply address.
James - 24 Jun 2007 07:28 GMT > <snip> >> A later post suggests using a standard basic to run your system & I [quoted text clipped - 6 lines] > > <snip> At that time it was setup to run on the Trs80 Mdl III/IV using M$Basic, & some assembly code for the bar code reader.
James
ArarghMail706NOSPAM@NOT.AT.Arargh.com - 24 Jun 2007 07:51 GMT >> <snip> >>> A later post suggests using a standard basic to run your system & I [quoted text clipped - 8 lines] >At that time it was setup to run on the Trs80 Mdl III/IV using M$Basic, >& some assembly code for the bar code reader. Ok, thanks.
 Signature ArarghMail706 at [drop the 'http://www.' from ->] http://www.arargh.com BCET Basic Compiler Page: http://www.arargh.com/basic/index.html
To reply by email, remove the extra stuff from the reply address.
Gerard Bok - 21 Jun 2007 13:32 GMT > I wrote a set of programs "many" years ago, running in a type of basic, >called "Thoroughbred Basic", a type of business basic. I need to re-write >it, bring it kicking and screaming to run on Windows XP. My 2 cents: - You have an application, fully running in Basic - You have knowledge about the internal operations (as you once wrote the program) - You / your client wants minimal costs.
So: Convert the program to some current Basic, e.g. PowerBasic. If the database runs just fine on an antique computer, don't waste resources writing a new database layer or adapting the program to a 'market standard' database (like MySQL or Access).
All you need is a single licence to e.g. www.powerbasic.com/products/pbcc/ at US$ 169
 Signature Kind regards, Gerard Bok
DAVID - 24 Jul 2007 02:57 GMT Overlays?
VB classic requires that each module be small, and that there be no overlap between the modules.
It can sometimes be very difficult to convert classic code with overlays to VB, because the only clean way to convert is as one big program, and then the big program is too large to compile.
I would certainly give it a shot, but I already own a copy of VB6, (which is a discontinued product.)
But if it is big, I would choose to use Powerbasic (already mentioned in this thread) which I also own a copy of, and which has no runtime deployment cost. I assume that there are other BASICs which might be suitable, but PB is the one we have used. PB allows us to convert overlays into one very large program, with less re-write.
(david)
> (Hope I'm posting this correctly, otherwise - sorry!, don't know what else > to do) [quoted text clipped - 202 lines] > ELSE > LET X3$=FNA$(M0$(215,6)) William Vaughn - 24 Jul 2007 17:18 GMT Let's talk for a minute about the goals of this project. What is the ultimate objective? Do you expect an application written like this to run as a Windows Form application or an ASP (browser-based) application? What value is there in the code? Are there proprietary formulas or other code that have not been replaced by more current technology? Are you trying to save time and money by leveraging this code? Are you trying to upgrade your skills so that you can support the program once its deployed? All of these are reasonable goals but might not make it worthwhile to convert the code to resurrect the application.
As I see it, the BASIC code is about as old as it gets. Today's BASICs are very different than those used in the 60's and 70's. I know, I used to teach BASIC in college in the early 70's. Visual Basic (versions 1-6) had some support for legacy operations as you are using so it might be easier to start there. However, consider that a Windows program is not linear coding--it's event-driven. This concept was not even considered in the languages of the time. The way one interacts with the user is also radically different. The PRINT statements aren't even supported in "Visual Basic".NET.
Depending on your goals, I would rethink this project. I liken it to a person with an old crank telephone wanting to connect it to the Internet to handle his email... ;)
 Signature ____________________________________ William (Bill) Vaughn Author, Mentor, Consultant, Dad, Grandpa Microsoft MVP INETA Speaker www.betav.com www.betav.com/blog/billva Please reply only to the newsgroup so that others can benefit. This posting is provided "AS IS" with no warranties, and confers no rights. __________________________________ Visit www.hitchhikerguides.net to get more information on my latest book: Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and Hitchhiker's Guide to SQL Server 2005 Compact Edition (EBook) -----------------------------------------------------------------------------------------------------------------------
> Overlays? > [quoted text clipped - 228 lines] >> ELSE >> LET X3$=FNA$(M0$(215,6)) Michael Mattias - 24 Jul 2007 18:09 GMT > Let's talk for a minute about the goals of this project. What is the > As I see it, the BASIC code is about as old as it gets. Oldies are often goodies.
MCM
William Vaughn - 24 Jul 2007 22:13 GMT Ah, would you rather launch yourself into space with the computers used in the Apollo mission or those used today? Oldies are just oldies... ;) Yes, an old application might be just as good (or better) than the day it was written but it might not work at all on today's OSs or fall short of what today's users expect.
 Signature ____________________________________ William (Bill) Vaughn Author, Mentor, Consultant, Dad, Grandpa Microsoft MVP INETA Speaker www.betav.com www.betav.com/blog/billva Please reply only to the newsgroup so that others can benefit. This posting is provided "AS IS" with no warranties, and confers no rights. __________________________________ Visit www.hitchhikerguides.net to get more information on my latest book: Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and Hitchhiker's Guide to SQL Server 2005 Compact Edition (EBook) -----------------------------------------------------------------------------------------------------------------------
>> Let's talk for a minute about the goals of this project. What is the >> As I see it, the BASIC code is about as old as it gets. > > Oldies are often goodies. > > MCM Karl E. Peterson - 24 Jul 2007 22:31 GMT > Ah, would you rather launch yourself into space with the computers used in > the Apollo mission or those used today? Oh man, last time I was at the Cape (~1990), the tour guy was saying the computers in the lander weren't anywhere near as powerful as "today's PCs." <shudder>
> Oldies are just oldies... ;) Yes, an old application might be just as good > (or better) than the day it was written but it might not work at all on > today's OSs or fall short of what today's users expect. Nothing wrong with oldies! Especially of the musical sort. But yeah... Gotta take each on its merits. <g>
 Signature .NET: It's About Trust! http://vfred.mvps.org
William Vaughn - 24 Jul 2007 23:18 GMT Since they didn't have so much as a hand-held calculator (it had not been invented yet) and the 8008 had not been invented... yes, those "computers" (mostly analog and RTL logic) were very crude by today's standards. Yes, your watch is more sophisticated. ;)
 Signature ____________________________________ William (Bill) Vaughn Author, Mentor, Consultant, Dad, Grandpa Microsoft MVP INETA Speaker www.betav.com www.betav.com/blog/billva Please reply only to the newsgroup so that others can benefit. This posting is provided "AS IS" with no warranties, and confers no rights. __________________________________ Visit www.hitchhikerguides.net to get more information on my latest book: Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and Hitchhiker's Guide to SQL Server 2005 Compact Edition (EBook) -----------------------------------------------------------------------------------------------------------------------
>> Ah, would you rather launch yourself into space with the computers used >> in [quoted text clipped - 11 lines] > Nothing wrong with oldies! Especially of the musical sort. But yeah... > Gotta take each on its merits. <g> Judson McClendon - 26 Jul 2007 16:03 GMT > Oh man, last time I was at the Cape (~1990), the tour guy was saying > the computers in the lander weren't anywhere near as powerful as > "today's PCs." <shudder> Even then, that was a vast understatement! The first mainframe I wrote production code for (though it was at the end of its life cycle) was the IBM 1401 in 1968, a second generation (discrete transistors) computer. This was less than a year before the first Apollo moon landing in 1969. The clock on the 1401 was 1kHz and it had 8k (of 6bit) RAM. The second mainframe that I wrote production code for, which was fairly new at the time in 1969, was the Burroughs B3500, which had a clock of 1MHz and 250k RAM. My current PC is 2 years old, and the clock is 2,400 times the clock on the B3500, a typical business mainframe of 1969, and has about 8,500 times the RAM, plus dual core processors. And you can bet that the computers on the Apollo missions weren't remotely as powerful as a 1969 mainframe, because a mainframe in 1969 filled a large room and required a *lot* of air conditioning. The Apollo computers were about as powerful as a 1950's mainframe like the IBM 1401, with about 8k RAM and a 1kHz clock. Typical PCs of 1990 were thousands of times more powerful (MHz & MBytes vs. kHz & kBytes). Even the pocket calculators of 1990 were more powerful than that! My HP-48GX calculator has 128K ram, with sockets for up to 256k more, and the copyright on it is 1993. The HP-48GX can do symbolic algebra and calculus.
 Signature Judson McClendon judmc@sunvaley0.com (remove zero) Sun Valley Systems http://sunvaley.com "For God so loved the world that He gave His only begotten Son, that whoever believes in Him should not perish but have everlasting life."
Karl E. Peterson - 26 Jul 2007 17:07 GMT >> Oh man, last time I was at the Cape (~1990), the tour guy was saying >> the computers in the lander weren't anywhere near as powerful as >> "today's PCs." <shudder> > > Even then, that was a vast understatement! Yeah, after posting that, I was thinking I may have misquoted -- that he actually said "today's handheld calculators"...
> Even the pocket calculators of 1990 were more powerful than that! Yep. Exactly.
 Signature .NET: It's About Trust! http://vfred.mvps.org
Tom Lake - 25 Jul 2007 12:54 GMT > Ah, would you rather launch yourself into space with the computers used in > the Apollo mission or those used today? > Oldies are just oldies... ;) Yes, an old application might be just as good > (or better) than the day it was written but it might not work at all on > today's OSs or fall short of what today's users expect. I might want the equipment of today but I'd sure like the engineers of the '60s running it! They could do wonders with just a slide rule!
Tom Lake
William Vaughn - 25 Jul 2007 16:57 GMT I have one in a glass case that's marked "IN CASE OF EMERGENCY, BREAK GLASS".
 Signature ____________________________________ William (Bill) Vaughn Author, Mentor, Consultant, Dad, Grandpa Microsoft MVP INETA Speaker www.betav.com www.betav.com/blog/billva Please reply only to the newsgroup so that others can benefit. This posting is provided "AS IS" with no warranties, and confers no rights. __________________________________ Visit www.hitchhikerguides.net to get more information on my latest book: Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and Hitchhiker's Guide to SQL Server 2005 Compact Edition (EBook) -----------------------------------------------------------------------------------------------------------------------
>> Ah, would you rather launch yourself into space with the computers used >> in the Apollo mission or those used today? [quoted text clipped - 7 lines] > > Tom Lake Karl E. Peterson - 24 Jul 2007 22:28 GMT > Overlays? > [quoted text clipped - 5 lines] > only clean way to convert is as one big program, > and then the big program is too large to compile. Huh? Examples, please? At least some sort of description, of what *possible* coding horror you're looking at where this was actually an issue?
> I would certainly give it a shot, but I already > own a copy of VB6, (which is a discontinued product.) > > But if it is big, I would choose to use > Powerbasic (already mentioned in this thread) Also a very good product. But the size of a DOS BASIC codebase never seemed to be much of a deciding factor in this decision. Also, other than hardware specific methods, nearly all DOS MSBASIC code loads and runs directly in VB6. Granted, perhaps not a factor with "Thoroughbred Basic" but worth mentioning in any VB/PB case.
(Why is this thread even in a *.dotnet.* group, anyway?)
 Signature .NET: It's About Trust! http://vfred.mvps.org
DAVID - 27 Jul 2007 01:50 GMT He did not say that it was porting from MS Basic!
I agree that porting from MS Basic to VB is a fairly small step. MS Basic assumed 64KB segments, all variables have global visibility but only local scope, etc.
But porting a big overlay program to MS Basic would be just as difficult.
As for coding horror - well just remember, people did object sub-classing and multiple inheritance in Basic back when C was only available on Unix.
Still, the moral ambiguity in my original message was deliberate.
(david)
>> Overlays? >> [quoted text clipped - 22 lines] > > (Why is this thread even in a *.dotnet.* group, anyway?) Michael Mattias - 27 Jul 2007 13:59 GMT > But porting a big overlay program to MS Basic > would be just as difficult. Actually it would be silly. MS-BASIC would be an incredibly poor choice of target languages to serve as a destination for such a project.
But... if one has one's heart set on using MS-BASIC for this project, better to start with a clean sheet of paper and rewrite the application completely.
MCM
Randy Reimers - 27 Jul 2007 22:06 GMT From the OP: (me) Just trying to help a friend from way back, get them the ability to run their present Basic code (or modified, or rewritten, or....) on "new" PCs - XP class or so. Not trying to port to MS Basic, I was hoping to 'port it into something modern - VB, VB.NET, Powerbasic, not sure what other flavors would be "easy" for me to understand. The original progams are available as text files, that would be easily copied or rewritten. The original set was written as 90+ stand-alone programs, of which a set of 4 are a split/overlay, as one program grew too big for the environment, and I split it into a base with 3 overlays. I don't need to convert more than 25 - but if I could get one, the rest would be easy. I have looked at PowerBasic, and a couple of others. I must have "writers block" - having a DIFFICULT time trying to get my brain around the differences in the languages. I was hoping that one of the Basics would be easier for me - but am drawing a blank.
I appreciate all the comments, and have learned some new things. I am a MS network Admin, 15 years experience, can set up MS servers, Novel, and MS workstations, and use VB scripting for logons, many other purposes. Far from stupid, but as to what should be an easy task - feel real dumb!
Randy Reimers
>> But porting a big overlay program to MS Basic >> would be just as difficult. [quoted text clipped - 7 lines] > > MCM William Vaughn - 28 Jul 2007 18:14 GMT Traditionally, conversions have always been hard. I expect that you might have better luck running a DOS Virtual PC to host your application. I have written some very large programs (even OS-level utilities) in MS-BASIC, others in CBASIC and others in HP BASIC--I would not try to convert this code past the next version as there are too many disconnects between the versions. It's also more than the language that's changed. The concepts and logic have changed since those languages were in use. Yes, I agree, you need to start from scratch... or run in a VPC.
Good luck
 Signature ____________________________________ William (Bill) Vaughn Author, Mentor, Consultant, Dad, Grandpa Microsoft MVP INETA Speaker www.betav.com www.betav.com/blog/billva Please reply only to the newsgroup so that others can benefit. This posting is provided "AS IS" with no warranties, and confers no rights. __________________________________ Visit www.hitchhikerguides.net to get more information on my latest book: Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and Hitchhiker's Guide to SQL Server 2005 Compact Edition (EBook) -----------------------------------------------------------------------------------------------------------------------
> From the OP: (me) > Just trying to help a friend from way back, get them the ability to run [quoted text clipped - 30 lines] >> >> MCM
Free MagazinesGet these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...
|
|
|