[Coco] decode 1.2.10
Wayne Campbell
asa.rand at gmail.com
Sun Jun 4 20:43:38 EDT 2017
I have uploaded a demo video to youtube. The link is:
https://youtu.be/aaypyZp1MSY
Enjoy! I hope it answers any questions any of you may have.
On Sun, Jun 4, 2017 at 1:26 PM, Wayne Campbell <asa.rand at gmail.com> wrote:
> Hi Bruce,
>
> As I read your response it dawned on me that there is an entire group on
> this list who wasn't here before, and that know nothing of DCom or decode.
> I will create a background/history page to explain it in detail, and for
> now I will do a brief history here.
>
> As most all programmers can attest to, when you first begin writing code,
> you tend to not make backups of your source, and you also tend to lose the
> only copy you have for a variety of reasons, the predominant reason being
> that you simply deleted the file by accident.
>
> My language of choice, since I began programming, has been BASIC. When I
> discovered OS-9 and Basic09, I knew that I had found the language I wanted
> to program in. Like other programmers, I was not very good at remembering
> to make backups of my source until I lost them enough times to learn a
> lesson.
>
> For me it took a few years to learn it. If you are programming in
> assembly, and you lose your source but still have a compiled executable, a
> disassembly will give you a good approximation of your source and you can
> use that as the starting point to rebuild your source. All you have to do
> is remember your variable and label names, and where your code may have
> differed from the disassembly output. In Basic09 (or any BASIC that doesn't
> compile to object code for that matter), you were not given that option.
> Even if you had the I-Code module, you could not easily recover your source
> code from it. For the most part you were relegated to starting all over
> from scratch and rewriting your code from the beginning. I noticed that I
> never was able to duplicate my code exactly, as the new modules differed
> from the original.
>
> In early 1991 I decided that someone needed to write a program to recover
> source code from a Basic09 I-Code module, and since no one else was doing
> it, I would. I named the program DCom - Basic09 I-Code De-Compiler. I
> worked on that program from November, 1991 until approximately April, 1993.
> At that time I had to sell my CoCo3 and everything that went with it, and
> all I had left was a 3-inch binder of the source code and other related
> Basic09 information. I managed to keep that binder until approximately
> summer, 2009, when I was now in a position to get back to it.
>
> I discovered quickly that DCom was a kludge. It was a miracle that the
> program worked at all, and in most cases it didn't, or didn't work well. I
> had learned alot more about programming and program structure over the
> years, and decided that I needed to rethink the program and start over. The
> program became decode, and has progressed to where it is now. I have had
> some help along the way, notably from Aaron Wolfe who supplied me with a
> routine to speed up the searches for counter identification and helped me
> with file search routines.
>
> I had to stop working on it again in 2014. For the past three years I have
> left it alone pretty much, though I have kept up with the list and the
> efforts to make our beloved CoCo more usable in the 21st century. Since I
> have been able to return to work on decode, I have decided to try and take
> the program the next step by correcting the display issues, adding a new
> feature for preserving user options, and start thinking about the next step
> in the evolution of the program.
>
> One of the things that occurred to me before is that I really needed to
> come up with a name that better identifies the program with its purpose.
> Since I-Code is "packed" in Basic09, I reasoned that the opposite is
> "unpacking". unpack is the name the program will have when it reaches the
> point in development where it really becomes useful. That point is where it
> is able to deal with merged module files and can identify modules that are
> object code, and files that are not executable.
>
> I have already written that code, several times, but decode (in its
> present form) cannot be used with the unpack front-end. I am thinking it
> will require a rewrite of both decode and unpack to make it work. Those
> details are for another day, and for the history of the program document
> that will be a page on the unpack-decode site.
>
> I hope this answers your (and anyone else's) questions regarding what
> decode is and what purpose it serves. Oh, and it is written in Basic09. I
> am certain that if I could write it in assembly I could make it run faster
> and be smaller than it is now, but I do not know assembly (or C) well
> enough to do that, and I prefer writing it in Basic09.
>
> Thank you for your interest, and if you or anyone else has questions about
> the remaining issues the decode engine still has regarding I-Code, ask and
> I will write another post detailing those issues.
>
>
> On Sun, Jun 4, 2017 at 5:42 AM, D. Bruce Moore <bruce at gracenote.ca> wrote:
>
>> Wayne,
>>
>> I took a look at your Decode page and I am not quite sure what’s going on.
>>
>> An intro, explaining what it is and does, in layman’s terms, might be a
>> nice addition.
>>
>> Cheers!
>>
>>
>>
>> > On Jun 3, 2017, at 11:08 PM, Wayne Campbell <asa.rand at gmail.com> wrote:
>> >
>> > I have been working on decode for the past few days. I have gotten much
>> > done to correct display issues and add support for preserving user
>> options.
>> > The new version is 1.2.10. When I can remember how to connect to
>> cococoding
>> > via telnet (unless that has changed) I will upload the updated pages and
>> > new version disk images there.
>> >
>> > I had prepared a video to showcase decode, but when I went to upload it
>> to
>> > youtube, iSpring Free Cam8 crashed for no apparent reason. Because I had
>> > not saved the project, I lost the video. I am back to square one and
>> have
>> > to make a new video. I will post here when I have the video made and
>> > uploaded to youtube.
>> >
>> > --
>> > Wayne
>> >
>> > The Structure of I-Code
>> > http://www.cocopedia.com/wiki/index.php/The_Structure_of_I-Code
>> >
>> > decode
>> > http://cococoding.com/wayne/
>> >
>> > --
>> > Coco mailing list
>> > Coco at maltedmedia.com
>> > https://pairlist5.pair.net/mailman/listinfo/coco
>>
>>
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> https://pairlist5.pair.net/mailman/listinfo/coco
>>
>
>
>
> --
> Wayne
>
> The Structure of I-Code
> http://www.cocopedia.com/wiki/index.php/The_Structure_of_I-Code
>
> decode
> http://cococoding.com/wayne/
>
--
Wayne
The Structure of I-Code
http://www.cocopedia.com/wiki/index.php/The_Structure_of_I-Code
decode
http://cococoding.com/wayne/
More information about the Coco
mailing list