[futurebasic] Converting a Mac OS 7.0 FBII program to OS X

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : November 2007 : Group Archive : Group : All Groups

From: Ken Shmidheiser <kshmidheiser@...>
Date: Fri, 16 Nov 2007 07:25:15 -0500
Pat asked:

> I am trying to get a rough idea of how much time it might take an
> experienced FutureBasic programmer to recompile an old Mac program and
> change the menus to make it OSX compatible.



Pat,

In addition to the other fine suggestions here, let me ask a few:

1. Is the program unstructured:

05 DIM A$, S$, Q$, L$, N, I
10 INPUT "What is your name?: "; A$
20 PRINT:PRINT "Hello "; A$ :PRINT
30 INPUT "How many stars do you want?: "; N
40 FOR I = 1 TO N
50 S$ = S$ + "*"
55 NEXT I
60 PRINT:PRINT S$:PRINT
70 INPUT "Do you want more stars: "; Q$
80 IF LEN(Q$) = 0 THEN GOTO 70
90 L$ = LEFT$(Q$, 1)
100 IF (L$ = "Y") OR (L$ = "y") THEN GOTO 30
110 PRINT:PRINT "Goodbye, ";
120 FOR I = 1 TO 100
130 PRINT A$; " ";
140 NEXT I
150 PRINT


or structured?


local fn StarLooper
dim as str255  userName
dim as long  @ numStars
dim as str31   answerStr
dim as long    i

input "What is your name?: "; userName
print chr$(13); "Hello "; userName; chr$(13)

do
input "How many stars do you want?: "; numStars
print chr$(13); string$( numStars, "*" ); chr$(13)
input "Do you want more stars? "; answerStr
until ucase$( left$( answerStr, 1 ) ) != "Y"

print chr$(13); "Goodbye, ";
for i = 1 to 100
print userName; " ";
next i
delay 2000
end

end fn

fn StarLooper

do
handleevents
until gFBQuit


2. If the code is unstructured, plan a total rewrite. If the code is  
structured, how many functions does it contain?

3. Are the functions mostly for handling controls (windows, buttons,  
fields, etc.), or are they for calculations, i.e., math, graphics, etc.?

4. If the program uses proprietary algorithms, are they commented and  
understandable?

5. Does the interface need to be modernized and/or new features added?

6. Is the program clean, logically and professionally written, or are  
we talking spaghetti code?

These responses will help us help you.

Ken