TweetFollow Us on Twitter

Serius89, HyperBASIC
Volume Number:6
Issue Number:2
Column Tag:Kelly's Corner

Serius89 and HyperBASIC

By Dave Kelly, MacTutor Editorial Board

Serius 89

Object Oriented Programming (OOP) has become a household phrase recently. Out of all of the OOP-la about OOP a wave of new OOP products have emerged. One of these is Serius89™ Developer which I have had the opportunity to examine. Serius Corporation of Salt Lake City, Utah is committed to developing Serius89 into a serious OOP development environment. It is their goal to fill needs of all Macintosh users, from developers to end users, to create their own applications.

Serius89 is a radically different approach to computer programming. It is based upon a set of Object Oriented routines written in C which Serius calls Object Interaction Protocol (OIP). OIP uses these self supporting routines called objects to present the user with a new way to put together a Macintosh application. You could think of Serius89 as a programmer’s erector set. You can create applications by connecting objects together much like tiles are connected together in a Double Helix data base. If you like Helix you’ll like this icon based approach to programming.

You as a Macintosh developer may develop OIP components which end users can assemble together in Serius89. There are some advantages to this approach it can eliminate costly code duplication, allowing a developer to utilize existing sets of routines. Once the routines have been written, you never need to rewrite the routine again.

The developer creates routines called methods that manage the low-level operation of data entities called objects. These methods are executed in response to events, which are generally posted by developers’ routines and managed privately by OIP. The Serius89 programmer never has to deal with the low-level operations once the developer has created the OIP routines. Here’s the catch the routines need to be pre-written before the programmer can put together the application.

Serius89 does not generate source code, but it does generate stand-alone, fully operational applications. The methods and functions are compiled together by the developer using any common Macintosh development system, then integrated into Serius89 to be used graphically to construct applications. The developer doesn’t need to know or understand conventional OOP to create the methods or functions.since most of the object orientation is handled automatically by the nature and structure of OIP. There are a number of MPW utility routines available in Pascal to handle the necessary tasks. (C or assembly developers may need to modify the interface declarations).

Serius89 includes several objects and functions which are ready to use to create applications. The big drawback is that the existing routines do not yet fully support the entire Macintosh toolbox. As long as your application is restricted to the objects that exist, you won’t have to write any new ones. I found that every application I wrote could not be implemented exactly as I desired because of missing functions. This isn’t all bad though, especially if you write your own objects and functions. These objects need only be written once and may then be used as many times as needed in your application. Serius is encouraging developers to create new functions and updates are provided periodically as new functions are made available.

Serius is a clearinghouse for all Serius89 objects and functions. Object Interaction Protocol, as with any development system, has basic guidelines that are established to maintain future compatibility. Each component has a unique ID number which should be registered with Serius to avoid ID conflicts in the future. As new components are created, some may require license agreements especially if written by third party developers. Objects which are provided with Serius89 include:

• Application: allows your program to launch other applications

• Button: specify any kind of button

• CD Audio: play audio CDs from your application

• Database: a powerful database engine

• Date: retrieves the current date

• File: allows your application to save objects to disk

• Menu: provides menus for your application

• Menu bar: creates a menu bar

• Menu item: defines menu items

• Number: this object stores a number (includes math functions)

• Picture: load and display PICT images

• Printer: allows access to standard Macintosh printers.

• Sound: load and play sound (snd) resources.

• Text: this object stores text

• Time: retrieves the current time

• Window: defines windows (zoomable document, document, fixed size document, dialog box, plain, plain with shadow, or rounded).

• Workstation: access AppleTalk networks and communicate with other Macintosh computers that are running Serius89 applications.

The version of Serius89 that I have reviewed is version 1.1. As I write this I am aware that version 1.2 has been completed (not yet reviewed) which allows all components to run under Multifinder, signals for windows to respond to Multifinder “switching”, workstation object now supports logging on with dynamic workstation names, improvements to keyboard, list, text, number, date and time objects, and several bug fixes. Alignment grids for positioning items as well as a layering system for functions on the workbench are also a part of version 1.2 . There are several other enhancements that are of importance including a faster database object. Version 1.3 was scheduled for release December 30 (prior to writing this column). Improvements are frequent and Serius is set up with a toll free technical support line to assist you. Even with all of this, there are a few areas that need to be improved which I should mention:

• There is no way to import resources from other sources with the exception of the Picture Object which will import PICT resources. This is a heavy stumbling block especially if you have special resources to include or want to use a favorite resource from another application. However, an icon editor is built in for creating icons for your application (no cut and paste available).

• The facility for positioning buttons, text, numbers etc is very crude. There are no tools and no grid lines. You can only drag objects and resize them in the window. I was assured that this was improved in the latest version which I have not yet seen.

I am sure that in time there will be significant improvements to Serius89. Updates have been coming out to registered users at the rate of about one every 4-6 weeks. If you can’t wait, and you can program, you could add your own objects. Serius89 is still in its infancy and will be quite powerful as soon as objects have been created which implement every aspect of the Macintosh toolbox. Until then, Serius89 is a powerful tool which can be expanded to meet any developer’s needs.

Serius Corporation

1981 East 4800 South

Salt Lake City, Utah 84117

801 272-7788 General Offices

800 876-6847 Technical Support

801 277-2440 FAX

BASIC WARS TAKES A RIGHT TURN

Note: Source code files accompanying article are located on MacTech CD-ROM or source code disks.

Along the way, HyperCard has both been praised and jeered. Yes, it has opened up a whole new world to some people who never dreamed they could program anything on a computer. Yet serious programmers have complained about its speed and others have wished it had more capabilities. Those with the C and Pascal compilers have been able to exclusively rule the world of XCMDs and XFCNs. Not any longer! Basic has taken a right hand turn and parked itself in the backyard of XCMD and XFCN.

Presenting HyperBASIC™ by Teknosys, Inc.

Creation of XCMDs and XFCNs is now easier than ever. The HyperBASIC application is a combination editor (multiple windows), compiler, linker and resource mover. Compiling a program is easy, just select the destination stack and select “Compile”. HyperBASIC does a quick syntax check then compiles, links, and moves the new XCMD or XFCN into the stack. If the syntax check finds an error, HyperBASIC gives suggestions of what needs to be changed. It doesn’t tell you exactly what the error is but it does flag the line the error occurred on except in a few cases when problems exist in a subroutine and the cursor is placed at the beginning of the XCMD or at the beginning of the subroutine. Suggestions of what went wrong are listed in a menu and when that item is selected, the item in the menu is pasted at the insertion point. Some improvement could be made in this area, but at least you don’t have to compile and run the routine before finding out that the problem is a simple typo.

In addition to being quick and easy to program, HyperBASIC is fast. When I ran the historic Sieve of Erastothenes,. HyperBASIC generated the 10 iterations of 1900 primes in 7.48 seconds on a Macintosh Plus, very close to the same speed as ZBasic. You can’t really compare HyperBasic and ZBasic though because they both serve different purposes. The “Accuracy” benchmark gives good results with an answer of x=503.43802 (correct answer) and s=1.23 in 2.12 seconds. (The benchmarks are shown below for the benefit of those that don’t have “The Complete MacTutor, Volume 2”, pg 379).

‘ 1

xCMD SieveofErastothenes
DEFINT a-s
DEFDBL t
DIM Flags(8191)
time1=_TickCount
’10 Iterations
FOR m=1 TO 10
Count=0
FOR i=1 to 8191
Flags(i)=1
NEXT i
FOR i=1 to 8191
IF Flags(i)=0 THEN GOTO 170
Prime=i+i+3
k=i+Prime
120 IF k<= 8190 THEN 
          Flags(k)=0
          k=k+Prime
          GOTO 120
END IF
Count=Count+1
170 NEXT i
NEXT m
time2=_TickCount
Totaltime=(time2-time1)/60
Totaltime$=str$(Totaltime)
SETFIELDBYNUM 1,8,Totaltime$
END

xCMD accuracy
‘ Accuracy Benchmark
‘ developed by R. Broucke
‘ at University of Texas, Austin
DEFDBL a-z
time1=_TickCount
s=0
x=0
FOR n=1 TO 1000
    s=s+x*x
    x=x+.00123
NEXT n
time2=_Tickcount
Totaltime=(time2-time1)/60
s$=str$(s)
x$=str$(x)
Totaltime$=str$(Totaltime)
SETFIELDBYNUM 1,1,s$
SETFIELDBYNUM 1,2,x$
SETFIELDBYNUM 1,3,Totaltime$
end

HyperBASIC is a rich basic language which includes all the latest syntax such as CASE and multiple line IF-THEN-ELSE. With only minor modifications, programs written for MS QuickBASIC or ZBasic may be converted for use in HyperBASIC. Several new commands have been added to enhance the HyperCard XCMD/XFCN environment. A set of callback statements will allow you to:

• Get the contents of a card of background field by Name, ID, or Number.

• Set the contents of a card of background field by Name, ID, or Number. (a sample of this command is shown in the example above which sets the contents of specific field to the results of the benchmark).

• Get the contents of a global variable.

• Set the contents of a global variable.

• Evaluate expressions such as “the short name of this card”.

• Send a Message to a card such as “show card button 3”

• Send a Message to HyperCard such as “domenu new card”.

There are 376 built-in calls to the Macintosh toolbox which are listed in the HyperBASIC manual. Although the list is not expandable, it appears to be complete. Teknosys plans to add more toolbox calls in the next version (1.1) which will be released late in the first quarter of 1990. Version 1.1 will be free of charge to registered users (except for shipping and handling). Also included in version 1.1 will be support for strings greater than 32K in length (in case you want to use something besides HyperCard). More direct support for SuperCard and other products that can use XCMDs and XFCNs. MicroPhone from Software Ventures is already supported although you need to use ResEdit (or equivalent) to more the resources into MicroPhone.

For debugging purposes, subprogram names may be used to create a MacsBug symbol table. You can use the toolbox statement “_Debugger” to halt execution of the program at a critical point and call Macsbug to step through the processor instructions to find the problem. If you’re experienced with assembly language you may generate assembler output instead of the XCMD or XFCN to examine the code.

There are more than 30 example programs to get you started and get some great ideas for other XCMDs and XFCNs. Soon, Teknosys will be putting together a Tips and Techniques newsletter to provide help and examples of how to change Inside Macintosh calls for use in HyperBASIC. Currently, you must be familiar enough with the syntax used in IM to know what to change to use toolbox calls in HyperBASIC.

I highly recommend HyperBASIC as a “quick and easy” way to extend and speed up HyperCard. System Requirements: 1M RAM, System 6.0.2 (or later), HyperCard 1.2.1 (or later). A hard drive is recommended.

Teknosys, Inc.

3923 Coconut Palm Drive, Suite 111

Tampa, Florida 33619

813-620-3494

AppleLink: D3375

CompuServe: 73237,2370

MacNET: TEKNOSYS

Price: $99

No Copy Protection!

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Yasu 4.0.0 β - System maintenance app; p...
Yasu was created with System Administrators who service large groups of workstations in mind, Yasu (Yet Another System Utility) was made to do a specific group of maintenance tasks quickly within a... Read more
Skype 7.37.0.178 - Voice-over-internet p...
Skype allows you to talk to friends, family and co-workers across the Internet without the inconvenience of long distance telephone charges. Using peer-to-peer data transmission technology, Skype... Read more
EtreCheck 3.0.5 - For troubleshooting yo...
EtreCheck is an app that displays the important details of your system configuration and allow you to copy that information to the Clipboard. It is meant to be used with Apple Support Communities to... Read more
Amadeus Pro 2.3.1 - Multitrack sound rec...
Amadeus Pro lets you use your Mac computer for any audio-related task, such as live audio recording, digitizing tapes and records, converting between a variety of sound formats, etc. Thanks to its... Read more
NeoFinder 6.9.3 - Catalog your external...
NeoFinder (formerly CDFinder) rapidly organizes your data, either on external or internal disks, or any other volumes. It catalogs all your data, so you stay in control of your data archive or disk... Read more
WhatsApp 0.2.1880 - Desktop client for W...
WhatsApp is the desktop client for WhatsApp Messenger, a cross-platform mobile messaging app which allows you to exchange messages without having to pay for SMS. WhatsApp Messenger is available for... Read more
Hazel 4.0.6 - Create rules for organizin...
Hazel is your personal housekeeper, organizing and cleaning folders based on rules you define. Hazel can also manage your trash and uninstall your applications. Organize your files using a familiar... Read more
Apple iBooks Author 2.5 - Create and pub...
Apple iBooks Author helps you create and publish amazing Multi-Touch books for iPad. Now anyone can create stunning iBooks textbooks, cookbooks, history books, picture books, and more for iPad. All... Read more
MYStuff Pro 2.0.26 - $39.99
MYStuff Pro is the most flexible way to create detail-rich inventories for your home or small business. Add items to MYStuff by dragging and dropping existing information, uploading new images, or... Read more
MarsEdit 3.7.8 - Quick and convenient bl...
MarsEdit is a blog editor for OS X that makes editing your blog like writing email, with spell-checking, drafts, multiple windows, and even AppleScript support. It works with with most blog services... Read more

The new Clash of Kings is just for Weste...
If you’ve played the original Clash of Kings, you’ll probably recognise the city building, alliance forging and strategic battles in Clash of Kings: The West. What sets this version apart is that it’s tailor made for a Western audience and the... | Read more »
Frost - Survival card game (Games)
Frost - Survival card game 1.12.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.12.1 (iTunes) Description: *Warning: the game will work on iPhone 5C and above and iPad Pro / 4. Other devices are not supported* | Read more »
How to build and care for your team in D...
Before you hit the trail and become a dog sledding legend, there’s actually a fair bit of prep work to be done. In Dog Sled Saga, you’re not only racing, you’re also building and caring for a team of furry friends. There’s a lot to consider—... | Read more »
How to win every race in Dog Sled Saga
If I had to guess, I’d say Dog Sled Saga is the most adorable racing game on the App Store right now. It’s a dog sled racing sim full of adorable, loyal puppies. Just look at those fluffy little tails wagging. Behind that cute, pixelated facade is... | Read more »
Let the war games commence in Gunship Ba...
Buzz Lightyear famously said, “This isn’t flying, this is falling – with style!” In the case of Gunship Battle: Second War, though, this really is flying - with style! The flight simulator app from Joycity puts you in control of 20 faithfully... | Read more »
How to get a high score in Fired Up
Fired Up is Noodlecake Games’ high score chasing, firefighting adventure. You take control of a wayward firefighter who propels himself up the side of a highrise with blasts of water. Sound silly? It is. It’s also pretty difficult. You can’t... | Read more »
NBA 2K17 (Games)
NBA 2K17 1.0 Device: iOS iPhone Category: Games Price: $7.99, Version: 1.0 (iTunes) Description: Following the record-breaking launch of NBA 2K16, the NBA 2K franchise continues to stake its claim as the most authentic sports video... | Read more »
Dog Sled Saga (Games)
Dog Sled Saga 1.0.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.1 (iTunes) Description: A game by Dan + Lisa As a rookie musher, foster a dogsledding team whose skills will grow if they're treated right. Week by... | Read more »
60 Seconds! Atomic Adventure (Games)
60 Seconds! Atomic Adventure 1.2 Device: iOS Universal Category: Games Price: $2.99, Version: 1.2 (iTunes) Description: 60 Seconds! is a dark comedy atomic adventure of scavenge and survival. Collect supplies and rescue your family... | Read more »
Tons of Bullets! (Games)
Tons of Bullets! 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Tons of BulletsA retro 2D pixel platformer infused with tons of bullets and tons of features!Fight as Kenji the Ninja and... | Read more »

Price Scanner via MacPrices.net

21-inch iMacs on sale for up to $120 off MSRP
B&H Photo has 21″ iMacs on sale for up to $120 off MSRP including free shipping plus NY sales tax only: - 21″ 3.1GHz iMac 4K: $1379 $120 off MSRP - 21″ 2.8GHz iMac: $1199.99 $100 off MSRP - 21″ 1... Read more
13-inch 2.7GHz/256GB Retina MacBook Pro on sa...
Amazon.com has the 13″ 2.7GHz/256GB Retina Apple MacBook Pro on sale for $151 off MSRP including free shipping: - 13″ 2.7GHz/256GB Retina MacBook Pro (sku MF840LL/A): $1348 $151 off MSRP Read more
Apple TVs on sale for up to $50 off MSRP
Best Buy has 32GB and 64GB Apple TVs on sale for $40-$50 off MSRP on their online store. Choose free shipping or free local store pickup (if available). Sale prices for online orders only, in-store... Read more
Apple refurbished 13-inch Retina MacBook Pros...
Apple has Certified Refurbished 13″ Retina MacBook Pros available for up to $270 off the cost of new models. An Apple one-year warranty is included with each model, and shipping is free: - 13″ 2.7GHz... Read more
Duplicate Sweeper Free On Mac App Store For O...
To celebrate the launch of Apple’s latest macOS Sierra, Stafford, United Kingdom based Wide Angle Software has announced that its duplicate file finder software, Duplicate Sweeper, is now available... Read more
13-inch Retina MacBook Pros on sale for up to...
B&H Photo has 13″ Retina Apple MacBook Pros on sale for up to $150 off MSRP. Shipping is free, and B&H charges NY tax only: - 13″ 2.7GHz/128GB Retina MacBook Pro: $1174.99 $125 off MSRP - 13... Read more
Evidence Surfaces Pointing To New A10X Chip F...
Citing a job description for a Project Lead position at Apple’s Austin, Texas engineering labs, Motley Fool’s Ashraf Eassa deduces that development is progressing well on Apple’s next-generation in-... Read more
Check Print’R for macOS Allows Anyone to Easi...
Delaware-based Match Software has announced the release and immediate availability of Check Print’R 3.21, an important update to their easy-to-use check printing application for macOS. Check Print’R... Read more
Apple refurbished 11-inch MacBook Airs availa...
Apple has Certified Refurbished 11″ MacBook Airs (the latest models), available for up to $170 off the cost of new models. An Apple one-year warranty is included with each MacBook, and shipping is... Read more
Apple refurbished 15-inch Retina MacBook Pros...
Apple has Certified Refurbished 2015 15″ Retina MacBook Pros available for up to $380 off the cost of new models. An Apple one-year warranty is included with each model, and shipping is free: - 15″ 2... Read more

Jobs Board

Lead *Apple* Solutions Consultant - Apple (...
# Lead Apple Solutions Consultant Job Number: 51829230 Detroit, Michigan, United States Posted: Sep. 19, 2016 Weekly Hours: 40.00 **Job Summary** The Lead ASC is an Read more
US- *Apple* Store Leader Program - Apple (Un...
…Summary Learn and grow as you explore the art of leadership at the Apple Store. You'll master our retail business inside and out through training, hands-on Read more
Integration Technician, *Apple* - Zones (Un...
…at Zones and for our customers each day. Position Overview The Apple Integration Technician will be responsible for performing customer specific configuration Read more
*Apple* Retail - Multiple Positions- Manhatt...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Sr. *Apple* Mac Engineer - Net2Source Inc....
…staffing, training and technology. We have following position open with our client. Sr. Apple Mac Engineer6+ Months CTH Start date : 19th Sept Travelling Job If Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.