On 12/7/12 7:04 AM, Dagen Brock wrote:
> The main reason I've finally started using an external editor is that I find the constraint of 24 rows of text to be too great considering the vertical quality of assembly.
That is one of my reasons as well. I got spoiled in the early '90s with
my first X Windows terminal--the days of coding at 80x24 were over (as
well as debugging with printouts).
I've been using vi since the late '80s and I still use it today (for
multiple languages), so I have stubbornly resisted using built-in
editors and IDEs. That is ultimately my beef with Merlin.
There are, IMHO, many benefits that outweigh the 5 seconds of savings by
coding and testing directly in Merlin. E.g. revision control systems
(e.g. SVN), UNIX-based CLI tools like diff, perl (used to generate ASM
code at times), faster assembly, etc... The UNIX environment has a very
rich set of development tools that I have grown very comfortable with.
To speed my testing I also created a small CLI Apple 1/II simulator with
very limited support for Apple 1/II calls (e.g. cout). This allows me
to quickly test my code logic, profile parts of the code, produce
histograms of the instruction frequency used, and produce easy to read
large memory dumps.
Example profile:
calls cycles time(s)
----- ------ -------
counter 01: 2 58698622 115.040750
counter 19: 4 2115 0.008292
counter 20: 1029 5608 5.655427
counter 21: 8 3919 0.030727
counter 22: 509 7797 3.889353
counter 23: 514 7760 3.908667
counter 24: 1612 36315 57.365493
counter 25: 675 55702 36.844430
counter 26: 4 27487358 107.742438
counter 27: 2 3703438 7.258199
counter 60: 329664 139 45.196389
For testing on the real thing my Makefiles simply create a bootable
floppy and calls "open floppy.dsk" to instantly load it up into Virtual
][--I'm testing in a second.
And yes, even with all this newfangled "hi-tech" I still spend most of
my time thinking about the problem at hand (and researching it), but
when it's time to put pen to paper I am 2-3x more efficient with vi. It
is a huge time saver for me.