[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