CanDo Probs. Helm????
25 messages in this thread
Hi All
I'm looking for some information on how to access random access disk files
through CanDo. Is it possible to use some other lauguage as a stop gap for this
purpose, like C or Arexx??
Also some info on Helm: Does it support random file access? How large is the
executable file for "stand-alone" program creation. If it's large 150K+ is
there any way to make it run as well but at a smaller size, like a small-ish
runtime lib? What's the scripting language like compared to CanDo for scope and
the Amiga system?
Thanks for any help on these lines.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Charles,
Helm has random file access but you will be probably be dissappointed with the
size of the freely distributable browser. It is currently about 425K but
includes the entire Helm paint program and is able to write into the
application file itself. I also maintain a version of HelmPresenter that is
used with interactive presentations and does not include the paint tools or the
ability to update the contents of the application file. It is about 330K. The
sizes of the browsers are not unusual when compared with similar authoring
systems. Also, Helm is good for applications with lots of information because
if automatically moves resources in and out of memory as necessary. You can
also store graphics, music, sound, text, and bitmapped fonts inside of the
application itself and access them like regular disk files.
Helm's scripting language is extensive and easy to learn. You can use it to
play music, play digitized sound, show pictures, or go to another page in the
application. You can also control the contents and attributes of any object. In
fact, you can include objects within scripting expressions. For instance, to
put some text into a textfield object, you use:
put "Hello, World!" into textfield "Message"
The textfield is updated instantly. If you want to add the contents of two
textfields together, you use something like this:
ans = (textfield "A") + (textfield "B")
If you have any question, just let me know.
Jerrell Nickerson Eagle Tree Software
Thanks Jerrell,
Yes dissappointed with the browser size but it still interests me due to what
it has. Although I've only glanced at it through reviews it looks good to me.
Would it be cost effective for you guys to develop an intelligent browser
program that looks for required commands as well as be user-configurable as to
what features (paint, application file writing) the executable file contains,
thereby giving us at least the opportunity to decide the total program size –
not much to ask really :-). It would certainly help sales surely!? You must
agree now is the time to look closer at the "browser" programs on these things.
Your main competitor (CD) is only 150K which on my application stuff generally
doubles the program size. Now this is just about acceptable, but you would make
it far to big, unless of course your "user-developed" code was smaller taking
like for like.
What about Helm features? Talking as a CanDo user, how does Helm support
multiple windows (requesters, sub programs etc), Arexx, text document printing,
text formating (to screen and/or printing), the list goes on really. To be
honest if you have any text from your sales literature mail it to me.
Your comments on resource handling interests me. Give it to me again but
simipler maybe. Just how does your 300+K browser and my 100K application code
with a few IFFs for screens utilise RAM, when surely they are already in RAM
when the user loads the complete program file. I maybe missing an obvious point
here, but it's my money 🙂
And last but not least what about program execution speed? Screen update with
CanDo using buttons etc etc is to slow I use a screen IFF to make it appear
quick, what is Helm like without such tricks.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Charles,
I would like to create a compiler for Helm applications that would include only
the necessary functions in the executable. Someday I will certainly create such
a compiler. However, I'm busy at the moment creating a cross platform version
of Helm and I expect it to take most of my time for the next year. I do plan to
move a lot of Helm into runtime libraries and this will accomplish a lot of
what you have in mind.
You shouldn't get the idea that I'm embarrassed by the sizes of Helm and the
browsers. There is a lot of stuff in Helm and it is more than just a program
that creates applications. It is like HyperCard and Toolbook because it is also
a flat file database manager where the the data is stored inside of the
application itself. If the user types into a textfield, Helm will update the
book/application file as necessary. There is also a music player, sound player,
PostScript printing, reports, hypertext, and visual effects. It has the largest
variety of built-in objects of any authoring system that I've seen. And the
integrated paint program is a lot more than a few touch-up tools. Helm 2 will
even have communcications features with support for the XPR libraries. If you
compare Helm to other applications of this scale, I think you will discover
that it is quite small. There are better tools for creating small utilities but
for more ambitious projects with lots of data and interactivity, Helm is a good
choice.
A Helm book consists of one or more pages. Helm automatically loads and unloads
each page (and its objects, scripts, actions, and images) from disk into memory
as the user moves from page to page. This means you don't have to worry about
loading and unloading resources into memory because Helm takes care of it
automatically. For a book with a lot of pages, most of the application remains
on disk until needed. Also, Helm now shuffles images in and out of fast memory
to help lighten the burden on chip memory.
I think the the execution speed is pretty good. I have done a lot of things to
make page rendering more efficient. For instance, each page is associated with
a form. A form can include any of Helm's objects and is used to create a
background for multiple pages. If the user moves to another page that uses the
same form, Helm analyzes the display and only renders the pieces of the screen
that need rendering. You can have Helm do the same thing if you change the
properties of one or more objects from the script language. By locking and
subsequently unlocking the output, Helm will update only the necessary parts of
the page.
I'll start uploading some examples soon so you can get a better idea of Helm's
capabilities.
Jerrell Nickerson Eagle Tree Software
Jerrell,
Well it's nice to hear you are thinking of an intelligent complier, just hope
it comes about what with all the other things you are doing. Just what is the
"cross platform version" you are working on?
I'm interested in Helm there's no doubt. I'm looking into either Blitz Basic
or Helm and both serve a different purpose so I could go for both but I'm still
looking into it really.
Just to check I'm looking for Helm to save and read random access files, these
need to stay on disk as a database file and Helm has to search, read, and write
to individual parts of the file only. I take it that's what you understand as
random access?
I look forward to your uploads (as long as there not massive) to feel Helm a
little more.
P.S. Is it possible to send Amiga printer escape codes directly to the PRT:
device within Helm?
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Charles,
I have redesigned Helm so I can more easily port it to other systems. Though it
is taking a lot longer than I anticipated, I'm planning to have the Windows
version by the end of the year. Because Helm is so complex, I realized that I
probably could not maintain several versions of the same program so I'm working
on a single core that will compile on multiple platforms. This means the Amiga
version will continue to get updated in the future, ports to subsequent OS's
will be much easier, and it also means you will be able to author books on the
Amiga that will run on other platforms.
You can seek to anywhere within a disk file with Helm's seek command. Here are
the descriptions of Helm's IO commands.
open <filename> as <container> [erase]
seek <integer expression> [from]
<start | position | end> [of] <file>
read [from] <file container> for <number of bytes>
read [from] <file container> until <character>
write <expression> to <file container>
Also, Helm 2 will have support for dBase files which will allow you to bind
record fields to Helm objects.
Helm's script language allows the author to specify individual codes in the
form of octal numbers. For instance, to send a 1 followed by a three to the
printer, you can use the following script:
open "prt:" as myprinter
write "\001\003" to myprinter
close myprinter
Jerrell Nickerson Eagle Tree Software
So when can we expect Helm 2?
I hope to release Helm 2 by late summer. I hope sooner but it always takes
longer than I expect.
Jerrell Nickerson Eagle Tree Software
Well the PC port sounds good and probably right up my street…stick with it
<g>.
I take it these "seek" commands, as well as the read and write commands don't
actually load the disk file into RAM. I need the file to stay on HD as it will
be to big to load into memory. Silly question I suppose, but I want to be sure.
Yes just been playing with the PRT: as a file and I'm getting there with CD
now.
When is a realistic release date for Helm 2 and what will the full price be?
Thanks for your help, it's looking good.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Helm doesn't load a file into RAM in order to use the IO commands. It uses the
native Amiga file commands for file access.
I hope to release Helm 2 by the end of the summer. I don't know about the
price yet.
Jerrell Nickerson Eagle Tree Software
OK on the file access that's what I need to know. Also is Helm a Workbench 2+
only or is it possible for it to work on all Amigas. This mainly goes for the
programs developed with it. To add to this is it say possible to use the
Amigaguide system in Helm on older machines?
Also does Helm support full control over colours in respect of selected button
compliment colours, menu backfill colours etc…..I mean "real" full control.
I think that covers most of my questions really…..till I get Helm of course
<g>. I may buy version "1", so I hope the upgrade price will be in good order
here.
Thanks for all your help in these matters.
P.S You don't know of any PD programs developed with Helm on CI$ do you?
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Helm works on all revisions of the operating system. The AmigaGuide system
works but I'm currently having a problem with the menus on 1.3 systems. It is
usually better to create a section in your book for documentation anyway. It is
better integrated and it allows you to change font, color, and style attributes
of the text as well as add illustrations to the text. Minimiga, my simulated
computer book, has an integrated ROM kernal manual so you will be able to see
an example of including hypertext documenation within the application itself.
I am probably going to increase the price of Helm 2 because I vastly
underestimated the amount of technical support Helm requires. The price of Helm
plus the upgrade cost will be less than purchasing Helm 2.
I don't think there are any PD Helm programs on CIS. I'll upload some when I
get a chance.
Jerrell Nickerson, Eagle Tree Software
Finally found some large reviews of Helm after about two weeks of searching
the loft <g>. And yes it looks very good and has a few things I'm really
looking for. The reviews were of version 1.35. Is this the latest or is there a
newer one. If so which, also at what price is Helm direct from you in $
(dollars) for UK shipment?
Another point is to do with page (book?? screen??) changing. Would I be right
to say Helm includes fades (image processing effects) between screens? Does
this happen as the second image is been compiled for display or does the user
still have to watch the page building on screen etc?
What is the "Chart" objects purpose.
I'll re-read the reviews to see if there are other points I'd like explaining
further.
Onto another idea that I'm looking into. I'm looking to include a function for
the user to draw a polygon and from this to calculate an area figure for the
polygon, based on pre-defined measurments, maybe for each pixel. Although I
haven't started coding for this, what features does Helm have that might help
in this matter.
Thanks for all the help Jerrell, all these "form", "page", "book" terms are a
little confusing as I can't relate them to anything yet, but at least I can get
some idea by asking about what I need.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
I've been using Helm for the better part of a year, and it's one of the
three things on my Amiga I absolutely cannot do without (the other two
being ARexx and WShell).
Not only is Helm powerful, but it's just downright FUN to use – there's no
other word to describe it.
And the tech support is incredible. As busy as Jerrell is, he is not
above taking a look at a book you're working on when you are absolutely
stuck.
Helm is worth it folks.
Stay cool B-)
-Larry
Thanks for the titbits of Helm info…it sounds like a good move and one I
should be taking sometime over the coming months. One thing that did help was
the willingness of Jerrell when it comes to "user" surpport a key element
today.
I'll have to have a good look into Arexx as well soon. What's WShell? One I
haven't heard much about.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Basically WShell is the best shell available for any platform that I've
ever seen. I suppose some Unix shells probably have some capabilities
WShell doesn't, but I don't know what they are. And the built-in ARexx
support of WShell (gee, that's a surprise) is simply awesomely powerful.
There are probably a couple things I'd like added to WShell, and a couple
changes in its design I'd like to see, but the fact is it does everything
the AmigaDOS Shell does and far, far, far more. And it does it all well
and fast. This is remarkable in light of the fact that WSHell 2.0, the
current version, was released in 1991 I believe.
The biggest gripe I have about the product is the manual. Most or all of
the information you need is there, but it's poorly organized by and large
and written in an often impenetrable manner. You sort of have to
understand what's going on in order to understand what's going on, which
isn't too much of a problem if you have a good understanding of the OS.
What slowed me down (I just installed it on my 1200 after a year of ???
not using it for some wierd reason) was the fact that the example icons
and scripts included on the distribution disk didn't work as advertised.
I remembered after spending a couple hours puzzling away that when I first
installed it on my old machine I had the same problem.
If you get it, and at $50 (if that's still the price) it's a bargain, I'd
suggest you read those parts of the manual relating to installation and
configuration and do it all yourself by hand to make sure things work
right.
Otoh, if you hardly use ever use the shell there's probably no point in
getting it. And if all you want are some of the surface benefits there
are utilities which will hack the shell to attach a scrollbar, attach
menus, allow drag-and-drop functionality etc. Still, as a seperate
product WShell is not a hack, and amazingly enough even though it's 3
years or so old it still does things faster and better than the new hacks
I've tried. Dropping an icon onto a WShell for example gives virtually
instant results, while AppCon slowly types things out.
And there are other features too numerous to count. It's a phenomenal
product.
Paul
Thankanyou for the WShell info there Paul. So WShell is a super powerful
Shell, as the name suggests. Now I don't really use the shell at all apart from
the odd de-arcing, but this may change and at least I know where to look if I
need the shell power-up. I think AREXX is likely to be the next conquest
though.
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Keep in mind then that WShell has built in ARexx support – which is to say
among other things that you can execute ARexx commands inline without
resorting to calling the RX processor.
Paul
OK Paul I've kept our comments and will look into WShell when my AREXX fingers
start walking as they will be sometime soon, I can feel it coming…..
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
All:
I just uploaded v1.54 of Helmbrowser and a number of Helm books I and
others have created. All are in the General Apps section of AMIGAUSER
since, like Jerrell, I couldn't figure out where the best place to upload
things of this nature is (rather annoying the way the library sections are
laid out). They should go live sometime soon.
FWIW, this should give folks an idea of what Helm can do <ba-DUM-pum>.
I'll upload others as I find them.
Stay cool B-)
-Larry
I'll give your Helm books a look see as and when they surface on the board.
Back to form figuring?!?!?
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
Charles:
I haven't played too much with RAFs, so I'll not waste time by displaying
my ignorance. There are open(), read(), write() and seek() commands in
both ARexx and Helm's scripting language, so you should be able to set
something up.
But, as far a Helm goes, it uses a 450K Browser, although with Helm 2 (due
out by the end of June), stand-alone books are possible.
The scripting language in Helm is like a cross between standard English,
BASIC, and C. You can do (no pun intended) nearly anything you can
imagine. The script of an object is considered one of its properties, and
can be changed dynamically. If that's not enough, Helm operates as an
ARexx function host, making it extensible through ARexx.
I spent this past week with a friend who is a principal of a small private
school. He put together a deck to keep track of students' grades. Took
him three months of 15-hour days (his words, not mine) using CanDo, and it
still didn't work right.
We did it in three evenings using Helm. And I was teaching him Helm the
whole time.
Stay cool B-)
-Larry
Larry:
Sounds about right. I, too, have been able to get more done in less time
using Helm instead of CanDo (I own both). Each system has its respective
strengths, but I like Helm better.
Wayne
Thanks for the info Larry. Helm is certainly looking like the move I want.
What did your friend think to Helm as compared with CanDo. Also the time
diffrence could have something to do with the scripting language ?. Maybe he
said "you can't do that with mine as easy" on the odd occasion you may like to
mention.
This is a rushed mailing so I'm been quick 🙂
C.C.I. Computer Applications
* Thirsk – North Yorkshire – United Kingdom *
My friend is giving up CanDo 2.5 and getting Helm. There were things he
was trying to do (I forget exactly what) that even the people at
Inovatronics who looked at his book said were impossible. Helm sailed
through them easily. Mostly, he was impressed with Helm's scripting
language. It did things with a couple lines of code that were just flat
annoying to implement in CanDo.
CanDo *is* a good program, to be sure, but nearly everyone I know who has
used both admits Helm is just as powerful and a heck of a lot more fun to
use.
Once I get around to it, I'll be uploading some Helm works of mine and
others. And if everyone bugs Jerrell enough, hopefully he'll upload some
of the example books his brother Scotty put together. Some are just
incredible.
Stay cool B-)
-Larry