[sdiy] Re: and firmware synth

Scott Gravenhorst music.maker at gte.net
Fri Mar 11 13:48:57 CET 2005


Hey Mr. Goodfortune!

My QuickC compiler (for DOS) also includes inline assembly, so parts of or all
of a program may be written in assembly with it.

And I understand where you're coming from completely, I was cracked out of the
same mold.  6800, Z80, 6802, 6803 and 6809.  Remember MIKBUG and SWATBUG? 
Machine language - grrrr.  Yeah, you calculate the branches and then tear your
hair out because you realized that you forgot one instruction and have to
recalculate several branches in a branch table - I used to cheat while
developing, I'd put in some NOP instructions so that I could leave the branches
alone.  Then when the program starts to work correctly, I remove the NOPs and
recalculate the branches only once.  I also did machine language diagnostic
programs for PDP-11 machines when I worked for DEC (flipping all of those
console switches).

"Batz Goodfortune" <batzman-nr at all-electric.com> wrote:
>Y-ellow Rainer 'n' all.
>
>At 01:23 PM 3/11/05 +0100, Rainer Buchty wrote:
>> >I've never written machine code for an i86 and frankly, segmented
>> >addressing pisses me off.
>>
>>Amen, brother!
>
>Well this is why I'm wondering if there aren't assemblers that handle that 
>transparently. Preferably without any reference to a pre-existing machine 
>architecture. To be honest I have no idea how that would work. I'm thinking 
>along the lines of a cross assembler but it would be on the same kind of 
>platform so technically, it wouldn't be a cross assembler.
>
>But for that matter, isn't a 386 and up, spoze to have a contagious 
>addressing mode?
>
>There's no way into C or pascal for me. Most people start on high level 
>languages with the 'print "hello world"' routine and work their way up 
>coding screen savers and little utilities to shunt data from a to b. I 
>never went there. I started with Z80s and 6800s and GASP! 8080s. Hell, I 
>once hand-coded on a 6800 with a hex pad. If you think segmented addressing 
>is bad, try having to calculate a relative jump every time you want to 
>write a loop. But I digress.
>
>Most of my experience with programming micros consists of telling LED A to 
>turn on when event B happens but only if event C has already occurred. You 
>know the deal. If it's any more abstract than the hardware layer I'm lost.
>
>>486, especially later models like DX4/100, should be plenty. Just look
>>what old Demos from the early to mid 90s show ("2nd Reality",
>>anyone?)... And then keep in mind that Synths in the 80s and early 90s
>>were driven by 8- and 16-bit CPUs in the range of 2-16MHz.
>
>Yes indeed. This is kinda what I was thinking. However I know that there's 
>also a fudge with a lot of this stuff. It's like trackers. They seem 
>incredibly powerful until you realize that they are a law unto themselves. 
>If they ever had to co-operate with anything else, or worse, something 
>outside of the system, you'd need significantly more power. On the other 
>hand, a system built at a low level would indeed be a law unto it self. 
>Probably the only thing it would have to contend with is MIDI.
>
>>If you're planning to make use of the BIOS anyway, why not going a step
>>further and also use DOS so you can also make use of pre-existing sound
>>card and MIDI interface drivers? But don't forget to keep the 640kB
>>barrier in mind, or else you have to get acquainted with so-called DOS
>>extenders. No need to license a commercial one, the (free) DJGPP suite
>>IIRC contains one -- but would also force you to use C.
>
>There's an open source DOS out there called NEWDOS. This is a full 32bit 
>protected mode reworking of the old favorite. Apparently it runs a TCP/IP 
>stack as well as being multi-tasking. But otherwise behaves as some kind of 
>uber-DOS. I've not tried it though I downloaded it many moons ago. In fact 
>it should be quite mature by now. There are other DOS clone projects too 
>apparently but I know not of these.
>
>But there's also a little OS called MenuetOS. This thing is a full, 
>multi-tasking/multi-user, threaded, object oriented, GUI driven and 
>networked OS. Although the code isn't terribly mature last time I looked, 
>it does everything you'd expect from a full blown desktop OS and is real 
>time oriented as well. It is not based on any other OS in particular. It's 
>been built from the ground up. But none of that is the interesting bit.
>
>The whole thing is something just over 900K in size and fits easily on and 
>boots from, a single floppy. It's written entirely in X86 assembler. Bugs 
>and code maturity aside, the two guys behind it must be uber-code-monkeys. 
>I've had a copy of it for ages but never tried it. Despite all that, it's 
>probably a bit on the high-level for me at this point. But I thought I'd 
>give it a plug here incase any of the other code jockeys here wanted to 
>look it up.
>
>http://www.menuetos.org/
>
>On the other hand, it might be just the ticket. Since it comes with it's 
>own assembler/compiler apparently. All inclusive in the 900K.
>
>I can't vouch for what it's actually like in practice but you've got to 
>turn it up to 11 for the guys who put it together. That's an astounding effort.
>
>Anyway, you're probably right about using DOS. Although I had a rather more 
>turn-key notion in mind. I'm sure it could be embedded though. And whilst 
>I'm not one for re-inventing the wheel, I'm also put off by having to 
>adhere to someone else's legacy. And of course, there's a little matter of 
>me not being able to tell the difference between DSP code and a bucket of 
>chook pellets. But that's kinda why I'm running this by you guys. With so 
>many fine bit-bolters here, it would seem like an interesting notion to 
>throw out there.
>
>Thanks again.
>
>Be absolutely Icebox.
>
>  _ __        _       ____ International Nihilist ____
>| "_ \      | |
>| |_)/  __ _| |_ ____       ALL ELECTRIC KITCHEN
>|  _ \ / _` | __|___ |Your source of Armageddon in a musically crass world
>| |_) | (_| | |_  / /
>|_,__/ \__,_|\__|/ /   Disgusting-> http://all-electric.com
>                 / ,__  Music -----> all-electric.com-click music/download
>Goodfortune    |_____| Cult  -----> http://www.subgenius.com
>

---------------------------------------------------------
- Where merit is not rewarded, excellence fades.
- Hydrogen is pointless without solar.
- What good are laws that only lawyers understand?
- The media's credibility should always be questioned.
- The only good terrorist is a dead terrorist.
- Governments do nothing well, save collect taxes.

-- Scott Gravenhorst | LegoManiac / Lego Trains / RIS 1.5
-- Linux Rex         | RedWebMail by RedStarWare
-- FatMan: home1.gte.net/res0658s/fatman/
-- NonFatMan: home1.gte.net/res0658s/electronics/
-- Autodidactic Master of Arcane and Hidden Knowledge.




More information about the Synth-diy mailing list