Conversion of large Hypercard Stack to Revolution
I am not a professional programmer but had worked with Hypercard from its inception, and went over to Revolution as soon as I became aware of its existence. I have been able to convert most of my stacks flawlessly, with one exception. In the late 1990s I produced a stack for a research project in Russian which contained 119,000 cards (sic!). It has become necessary to reactivate this stack, and to convert it to Revolution Enterprise 4.5 I have followed the prescribed Revolution procedure. After conversion, all the functions I had built into the stack work as they should, but the converted stack contains only 28,005 cards. Is there a built-in limit on how many cards a conversion can accommodate? Is there a work-around? Any advice appreciated. Hopefully, Richard Pierce -- Richard Holton Pierce Professor of Egyptology University of Bergen (Ret.) richard.pie...@rihopi.on-rev.com richard.pie...@uib.no rich...@pierce.no ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
I would recommend doing some sort of audit trail on the two versions, such as Version running in Hypercard: repeat with x = 1 to the number of cards go card x put the short id of this card ^ the name of this card cr after masterList end repeat put the number of lines in masterList into cardCount put the short date the short time cr before masterList put Master List of Card Details - cardCount cr before masterList put masterList into url (file:CardIdAndNameList.txt) --- Then do the same for your converted stack and see if there is a pattern, such as duplicate card names, or background definitions that don't exist, etc. Of course, with Hypercard, there is always the possibility of a corrupted stack. I used to do many recoveries back in the day, especially on the Rodime 140 hard drives. This is why I used the go to card x step. If that fails, then it will be a clue about the health of the stack. If there is a failure with go to card x then try repeat with x = the number of cards down to 1 Hope his gives you some clues. Jim Ault Las Vegas On Aug 15, 2010, at 1:36 AM, Richard Holton Pierce wrote: I am not a professional programmer but had worked with Hypercard from its inception, and went over to Revolution as soon as I became aware of its existence. I have been able to convert most of my stacks flawlessly, with one exception. In the late 1990s I produced a stack for a research project in Russian which contained 119,000 cards (sic!). It has become necessary to reactivate this stack, and to convert it to Revolution Enterprise 4.5 I have followed the prescribed Revolution procedure. After conversion, all the functions I had built into the stack work as they should, but the converted stack contains only 28,005 cards. Is there a built-in limit on how many cards a conversion can accommodate? Is there a work-around? Any advice appreciated. Hopefully, Richard Pierce -- Richard Holton Pierce Professor of Egyptology ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Hi Richard, According to the documentation, the number of cards in a Revolution stack is only limited by the amount of available memory. I can imagine that a stack with 119000 cards becomes rather big once converted to Revolution. Perhaps it indeed doesn't fit in memory. It is also possible that one card is corrupted, but usually this causes Revolution to fail importing the entire stack. If you are using a very old version of HyperCard, it might help to convert it to HyperCard 2.3 or 2.4.1 before opening your stack in Revolution. Compacting your stack might also help. A few years ago, I created a HyperCard utility, which allows for recovering corrupted stacks and seems to work very well. It can also cut your stack into smaller pieces. This utility is called Split Recover. It is freeware and you can find it here http://qurl.tk/ey . You will need a machine with Mac OS 9 to run this utility. There's another utility, called DIFfersifier, which extracts the data from your stack. It won't work with corrupted stacks and you might need to run Split Recover before using DIFfersifier. DIFfersifier works on Mac OS X, Windows and Linux. You can find this utility here http://differsifier.economy-x-talk./com. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering Homepage: http://economy-x-talk.com Twitter: http://twitter.com/xtalkprogrammer KvK: 50277553 From 15th August, we'll have time for new projects! Be the first in line and contact me now! Download the Installer Maker plugin for Runtime Revolution at http://qurl.tk/ce On 15 aug 2010, at 10:36, Richard Holton Pierce wrote: I am not a professional programmer but had worked with Hypercard from its inception, and went over to Revolution as soon as I became aware of its existence. I have been able to convert most of my stacks flawlessly, with one exception. In the late 1990s I produced a stack for a research project in Russian which contained 119,000 cards (sic!). It has become necessary to reactivate this stack, and to convert it to Revolution Enterprise 4.5 I have followed the prescribed Revolution procedure. After conversion, all the functions I had built into the stack work as they should, but the converted stack contains only 28,005 cards. Is there a built-in limit on how many cards a conversion can accommodate? Is there a work-around? Any advice appreciated. Hopefully, Richard Pierce ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Sorry for messing up the link in my previous post. Hi Richard, According to the documentation, the number of cards in a Revolution stack is only limited by the amount of available memory. I can imagine that a stack with 119000 cards becomes rather big once converted to Revolution. Perhaps it indeed doesn't fit in memory. It is also possible that one card is corrupted, but usually this causes Revolution to fail importing the entire stack. If you are using a very old version of HyperCard, it might help to convert it to HyperCard 2.3 or 2.4.1 before opening your stack in Revolution. Compacting your stack might also help. A few years ago, I created a HyperCard utility, which allows for recovering corrupted stacks and seems to work very well. It can also cut your stack into smaller pieces. This utility is called Split Recover. It is freeware and you can find it here http://qurl.tk/ey . You will need a machine with Mac OS 9 to run this utility. There's another utility, called DIFfersifier, which extracts the data from your stack. It won't work with corrupted stacks and you might need to run Split Recover before using DIFfersifier. DIFfersifier works on Mac OS X, Windows and Linux. You can find this utility here http://differsifier.economy-x-talk.com. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering Homepage: http://economy-x-talk.com Twitter: http://twitter.com/xtalkprogrammer KvK: 50277553 From 15th August, we'll have time for new projects! Be the first in line and contact me now! Download the Installer Maker plugin for Runtime Revolution at http://qurl.tk/ce On 15 aug 2010, at 10:36, Richard Holton Pierce wrote: I am not a professional programmer but had worked with Hypercard from its inception, and went over to Revolution as soon as I became aware of its existence. I have been able to convert most of my stacks flawlessly, with one exception. In the late 1990s I produced a stack for a research project in Russian which contained 119,000 cards (sic!). It has become necessary to reactivate this stack, and to convert it to Revolution Enterprise 4.5 I have followed the prescribed Revolution procedure. After conversion, all the functions I had built into the stack work as they should, but the converted stack contains only 28,005 cards. Is there a built-in limit on how many cards a conversion can accommodate? Is there a work-around? Any advice appreciated. Hopefully, Richard Pierce ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Pattern recognition of basic shapes in Rev
I'd like to emulate the behavior of some software which allows you to draw rough shapes by hand and recognises whether you want to draw a circle, triangle, rectangle etc. The tools would allow you to use the freehand pen polygon tool to sketch and then replace the sketch with an appropriately placed polygon or button. The missing algorithm is one which will take an arbitrary set of poygon points and return the recognised shape and vertices / dimensions. Any ideas where to start? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Richard, We've done a lot of large HC to Rev conversions and have run into the same problem. 1. Make sure the original HC stack has been compacted, several times 2. Strip all NULLs before import. These can get into the data if a user has pasted text into the HC fields from Word or some other programs. It appears that Rev removes all data between the NULLs. 3. Don't use Rev cards for a large number of records, it just won't handle the information in this format as well as HC did. Move to a database - or use a text file for the data. 4. Put in some wait states (wait 0 seconds) in your import routine to let the computer catch up and finish processing current information before continuing. 5. Don't try to view the information in a Rev field. This will truncate any information beyond approx 64,000 characters in a line. If you view it in a field and then put the field back into the DB, all of the truncated info will be lost. Paul Looney On Aug 15, 2010, at 1:36 AM, Richard Holton Pierce wrote: I am not a professional programmer but had worked with Hypercard from its inception, and went over to Revolution as soon as I became aware of its existence. I have been able to convert most of my stacks flawlessly, with one exception. In the late 1990s I produced a stack for a research project in Russian which contained 119,000 cards (sic!). It has become necessary to reactivate this stack, and to convert it to Revolution Enterprise 4.5 I have followed the prescribed Revolution procedure. After conversion, all the functions I had built into the stack work as they should, but the converted stack contains only 28,005 cards. Is there a built-in limit on how many cards a conversion can accommodate? Is there a work-around? Any advice appreciated. Hopefully, Richard Pierce -- Richard Holton Pierce Professor of Egyptology University of Bergen (Ret.) richard.pie...@rihopi.on-rev.com richard.pie...@uib.no rich...@pierce.no ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Of course, everything everyone is recommending is against a copy of the original stack. Make a copy, try something, like a compact, and then save that copy. Then use that copy and do a second compact, save that copy, etc. When doing this kind of recover I normally keep a log of the versions and what their lineage is. I agree with the go to card x test for every card. If you cannot go to every card, you've got a corrupted stack. I've typically found it is a single card and I can grab the rest of the stack by advancing from the first card to the bad card, and then once that dies, advancing from the last card to the bad card. I typically have an exporter pulling all the scripts and card and field definitions for each card into a text file (one per card works for me). Later I build the framework in RunRev and then spin through the text files and import the data into that framework. I've opened stacks with text editors and have used that to extract data and scripts from the bad cards. The idea of removing NULL characters from the stack using a text editor is not something I've tried before but it seems like it is worth a try. I've found TexEdit to work quite well when opening large stacks. I've not tried TextWrangler or BBEdit but I'm guessing they too can handle mega large files. Sounds like as a last resort you could hire someone (not me) on this list to do the conversion for you. Good luck, Kee Nethery ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Pattern recognition of basic shapes in Rev
Yes, the missing algorithm. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
On 8/15/10 4:06 AM, Jim Ault wrote: I would recommend doing some sort of audit trail on the two versions, such as Version running in Hypercard: repeat with x = 1 to the number of cards go card x put the short id of this card ^ the name of this card cr after masterList end repeat put the number of lines in masterList into cardCount put the short date the short time cr before masterList put Master List of Card Details - cardCount cr before masterList put masterList into url (file:CardIdAndNameList.txt) Just for the record, the put into url syntax isn't supported by HC, you have to do the open/read/write file dance. But in this case I wouldn't even try converting the stack, it's just too big. Instead I'd export all the data to text files from within HC. Then I'd make a new mainstack in Rev and see if I could import. Or, you can make a one-card version of your stack in HC by saving the original as a copy using the current background. Then try importing that into Rev. A one-card stack will import fine. But with that many cards I wouldn't recommend importing at all, the stack will not function very smoothly. I'd move the data to outside storage (files or database) and read in whatever is needed dynamically. In general, because the whole stack needs to load into RAM, Rev stacks shouldn't really contain more than a few thousand cards for optimal performance. How many a few is will depend on how much data each card contains and how many objects. A rough rule-of-thumb figure is around 5,000 cards. -- Jacqueline Landman Gay | jac...@hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Hi, wait 0 secs really should be wait 0 secs with messages to have the effect you want. Stripping the NULLs is an interesting idea, but there is no way to do this inside of HC as far as I know and removing _ALL_ NULLs might break the stack. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering Homepage: http://economy-x-talk.com Twitter: http://twitter.com/xtalkprogrammer KvK: 50277553 From 15th August, we'll have time for new projects! Be the first in line and contact me now! Download the Installer Maker plugin for Runtime Revolution at http://qurl.tk/ce On 15 aug 2010, at 17:16, Paul Looney wrote: Richard, We've done a lot of large HC to Rev conversions and have run into the same problem. 1. Make sure the original HC stack has been compacted, several times 2. Strip all NULLs before import. These can get into the data if a user has pasted text into the HC fields from Word or some other programs. It appears that Rev removes all data between the NULLs. 3. Don't use Rev cards for a large number of records, it just won't handle the information in this format as well as HC did. Move to a database - or use a text file for the data. 4. Put in some wait states (wait 0 seconds) in your import routine to let the computer catch up and finish processing current information before continuing. 5. Don't try to view the information in a Rev field. This will truncate any information beyond approx 64,000 characters in a line. If you view it in a field and then put the field back into the DB, all of the truncated info will be lost. Paul Looney ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Conversion of large Hypercard Stack to Revolution
Yes, Mark, wait 0 secs with messages is better. The NULL Hypothesis is a bit strange but we have encountered many problems (data disappearing, sorts not working right, filters filtering too much) all of which were fixed by striping NULLs from the data before performing the action. Now it is always one of the first things we do. I was suggesting removing the NULLs either from each record as it is imported to the text file - or removing the NULLs from the text file before using it with Rev. I agree that it would be a bad idea to removed NULLs from the HC stack directly. Sorry I didn't make that clearer. Paul Looney On Aug 15, 2010, at 11:38 AM, Mark Schonewille wrote: Hi, wait 0 secs really should be wait 0 secs with messages to have the effect you want. Stripping the NULLs is an interesting idea, but there is no way to do this inside of HC as far as I know and removing _ALL_ NULLs might break the stack. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering Homepage: http://economy-x-talk.com Twitter: http://twitter.com/xtalkprogrammer KvK: 50277553 From 15th August, we'll have time for new projects! Be the first in line and contact me now! Download the Installer Maker plugin for Runtime Revolution at http://qurl.tk/ce On 15 aug 2010, at 17:16, Paul Looney wrote: Richard, We've done a lot of large HC to Rev conversions and have run into the same problem. 1. Make sure the original HC stack has been compacted, several times 2. Strip all NULLs before import. These can get into the data if a user has pasted text into the HC fields from Word or some other programs. It appears that Rev removes all data between the NULLs. 3. Don't use Rev cards for a large number of records, it just won't handle the information in this format as well as HC did. Move to a database - or use a text file for the data. 4. Put in some wait states (wait 0 seconds) in your import routine to let the computer catch up and finish processing current information before continuing. 5. Don't try to view the information in a Rev field. This will truncate any information beyond approx 64,000 characters in a line. If you view it in a field and then put the field back into the DB, all of the truncated info will be lost. Paul Looney ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Trouble Setting Cookies
Go to http://pareto.on-rev.com/setcookie.irev This page has a one-button form that sets a cookie by calling a script called sSetCookie.irev. The cookie's name is testCookie and it's value is 666. Here is the script. ?rev put Set-Cookie: testCookie = 666 ;path=/ into theCookie put new header theCookie put url (file:cookieResult.html) into thePage put Done. the long date the long time into theMessage replace {message} with theMessage in thePage put thePage ? Gregory, The POST operation is not setting the cookie. As you can see here: http://andregarzia.com/shots/Cookie_Result-20100815-203217.jpg The set-cookie header is not coming thru. Try loosing the path part, it might be confusing the browser. Tricky tricky tricky. :-/ (PS: also try put header instead of put new header) -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Trouble Setting Cookies
Just in case it hasn't been mentioned already (I haven't really been following the thread closely), put header has to be used before *any* other put commands. Jeff M. On Sun, Aug 15, 2010 at 6:35 PM, Andre Garzia an...@andregarzia.com wrote: Go to http://pareto.on-rev.com/setcookie.irev This page has a one-button form that sets a cookie by calling a script called sSetCookie.irev. The cookie's name is testCookie and it's value is 666. Here is the script. ?rev put Set-Cookie: testCookie = 666 ;path=/ into theCookie put new header theCookie put url (file:cookieResult.html) into thePage put Done. the long date the long time into theMessage replace {message} with theMessage in thePage put thePage ? Gregory, The POST operation is not setting the cookie. As you can see here: http://andregarzia.com/shots/Cookie_Result-20100815-203217.jpg The set-cookie header is not coming thru. Try loosing the path part, it might be confusing the browser. Tricky tricky tricky. :-/ (PS: also try put header instead of put new header) -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Trouble Setting Cookies
Jeff, If I remember correctly it can be used after some other put but not after the first ? sign, the first ? is what triggers the start of the output process by that time, all the put headers need to be in the output queue. :D On Sun, Aug 15, 2010 at 9:11 PM, Jeff Massung mass...@gmail.com wrote: Just in case it hasn't been mentioned already (I haven't really been following the thread closely), put header has to be used before *any* other put commands. Jeff M. On Sun, Aug 15, 2010 at 6:35 PM, Andre Garzia an...@andregarzia.com wrote: Go to http://pareto.on-rev.com/setcookie.irev This page has a one-button form that sets a cookie by calling a script called sSetCookie.irev. The cookie's name is testCookie and it's value is 666. Here is the script. ?rev put Set-Cookie: testCookie = 666 ;path=/ into theCookie put new header theCookie put url (file:cookieResult.html) into thePage put Done. the long date the long time into theMessage replace {message} with theMessage in thePage put thePage ? Gregory, The POST operation is not setting the cookie. As you can see here: http://andregarzia.com/shots/Cookie_Result-20100815-203217.jpg The set-cookie header is not coming thru. Try loosing the path part, it might be confusing the browser. Tricky tricky tricky. :-/ (PS: also try put header instead of put new header) -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Printing Field contents in RunRev Enterprise 4.5.5
Thank you for suggestions but I am still having trouble. I have a Stack that has thirty Cards containing multiple choice questions. On Four of these thirty Cards I have a Field named Results that contains the users answers for each section. On each of the four Cards that has the field Results I have a Print Button. I have tried the following scripts to try and print on a Networked Printer the contents of the Field Results, to no avail. What am I doing wrong? on Mouseup print card Output end Mouseup (Used this as a TEST - This prints the Card to the printer successfully) on Mouseup revPrintText Hello world End Mouseup (Used this as a TEST - This prints a Blank Page) on Mouseup revPrintField the name of field Results end mouseup (This continues to print a Blank Page) on Mouseup revPrintText (the htmlText of field Results),Results,the time the date End Mouseup (This continues to print a Blank Page) I have checked that the Field Results contains text that is Black and not White. Can a Stack only have one Field Named Results within its Cards? I am using a Mac and exporting to Mac (which prints fine) but the Windows Standalone continues to print a Blank Page. Am using Enterprise 4.5.5 If YOU were wanting to print the text from a Field named Results what specifically would YOU script: Kind regards, Brent. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: teaser
On Aug 11, 2010, at 2:00 AM, Shao Sean wrote: still low standards but here are a couple little teaser videos of stuff i have been working on.. ... the controls are 100% revTalk and are hidden in compiled applications.. There are tears in my eyes! I am SO ready for these! Low standards! Ha! t -- Tereza Snyder Califex Software, Inc. www.califexsoftware.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: teaser
On Wed, Aug 11, 2010 at 3:51 PM, Shao Sean shaos...@wehostmacs.com wrote: please share with us how did you add a control to the toolbar as well, I liked that. copy group ;-) I am going *CRAZY* with copy groups now... life is so much easier! -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution